... so that their outputs provides a more readable description of null
nodes and lists, in particular it displays as much information for lists
as for other AST nodes.
Change-Id: Ib615fb70bd6a1fd9a5f0fa9b473cbc445d51abcb
TN: PA21-020
This is a cleanup since it centralizes the logic to create a value type
name for AST node types in one single place.
Change-Id: I1c32c9ef0874925d3477e3aae4acc5de8b9ccdb2
TN: PA21-020
There is a discrepancy between various parts of Langkit for the name
given to root list types: ListFoo, FooList, FooListType, ... This commit
attempts to unify them into FooList.
Change-Id: I11276fd28963e20ede5bee1199869d06903a1112
TN: PA21-020
Users can choose whether automatically generated "root list types" are
abstract. This makes it possible to make abstract AST node types that we
know are never instantiated.
Change-Id: Id3cbfcab9523f4d87aa3acf8ec32188776c94d3a
TN: PA21-020
This will make it possible for users have only one implementation to
handle all lists.
Change-Id: Icd5b2c964278f751f34270472fca1990dee0cec6
TN: PA21-020
Now that all concrete AST lists have their own concrete kind, this
$_List kind is unused. Better remove it.
Change-Id: I1022b93b06a63b36fb8f6613be9ea134480eea95
TN: PA21-020
The identity is still determined by the property, but this will allow to
have a logic binder with a null conversion property.
Change-Id: I94dfea8ccacac49cf64712eeb42c0a0a3d56db37
From taking two Equations operands to taking any kind of expression that
is an equation of a node type.
Change-Id: I1bbd05a62f92db3c719a24b0f0456d817bf4d192
This will allow users to attach properties to lists themselves and thus
avoid patterns like:
class ItemList(BaseNode):
items = Field(type=Item.list_type())
my_property = Property(...)
Also enhance the List parser so that users can provide a specific list
subclass to use to hold the parsing result.
Change-Id: I3ee57d27095951f5480ae35c90ef569be4bc2ed6
TN: PA21-020