import lexer_example
@with_lexer(foo_lexer)
grammar foo_grammar {
    @main_rule main_rule <- Example("example")

}

@abstract class FooNode : Node {

    fun sophisticated_predicate (): Bool = true
}

class Example : FooNode {
    var1 : LogicVar

    @export fun prop (): Example = {
        val _ = %predicate(BareFooNode.sophisticated_predicate, node.var1);

        node.as_bare_entity
    }
}
