class BaseExample(FooNode): # Check for proper member inheritance handling: the introspection API # should list "fld_1" first and "fld_2" for BaseExample, but the opposite # order for Example. fld_1 = AbstractField(type=T.Name) fld_2 = AbstractField(type=FooNode) @langkit_property(return_type=T.Bool, public=True, kind=AbstractKind.abstract) def id_bool(id=T.Bool): pass
class Decl(FooNode): name = AbstractField(T.FooNode) # Warning on this abstract field
class ChainedPatternLink(LKQLNode): """ Element of a chained pattern of the form: (selector|field|property) pattern """ pattern = AbstractField(type=UnfilteredPattern)
class Decl(FooNode): name = AbstractField(T.Name) value = AbstractField(T.Expr)
class BaseExampleHolder(FooNode): f = AbstractField(type=T.Example)
class ExampleHolder(BaseExampleHolder): f = AbstractField(T.FooNode)
class ExampleHolder(BaseExampleHolder): f1 = AbstractField(T.FooNode) f2 = Field(type=T.FooNode)
class BaseExampleHolder(FooNode): f1 = AbstractField(T.FooNode)
class AdaMain(AdaPreludeNode): name = AbstractField(type=T.Expr)