visit

abstract fun visit(target: Namespace, arg: A): T
abstract fun visit(target: Grammar, arg: A): T
abstract fun visit(target: Rule, arg: A): T
abstract fun visit(target: ChoicePriority, arg: A): T
abstract fun visit(target: ChoiceEqual, arg: A): T
abstract fun visit(target: ChoiceAmbiguous, arg: A): T
abstract fun visit(target: Concatenation, arg: A): T
abstract fun visit(target: Group, arg: A): T
abstract fun visit(target: Multi, arg: A): T
abstract fun visit(target: SeparatedList, arg: A): T
abstract fun visit(target: NonTerminal, arg: A): T
abstract fun visit(target: Terminal, arg: A): T
abstract fun visit(target: EmptyRule, arg: A): T