Files

27 lines
546 B
Plaintext
Raw Permalink Normal View History

# Check that the Python bindings to wrap/unwrap arrays of structs of arrays work
# as expected.
import lexer_example
@with_lexer(foo_lexer)
grammar foo_grammar {
@main_rule main_rule <- Example("example")
}
@abstract
class FooNode implements Node[FooNode] {
}
class Example: FooNode {
@exported
fun example_holders(): Array[ExampleHolder] =
[ExampleHolder(examples=[self])]
@exported
fun identity(a: Array[ExampleHolder]): Array[ExampleHolder] = a
}
struct ExampleHolder {
examples: Array[Entity[Example]]
}