|Language Meta-Model Specification|
ast_sub_tree(?Language, ?ArgumentName) is nondet
- In all nodes of the AST of language arg1, the argument with name arg2 refers to a subtree of the respective AST node. For instance, in the Java AST arguments named
ast_sub_tree('Java', expr). ast_sub_tree('Java', args).
- In particular, the
exprargument used above in the definition of
callTdenotes the child expression that represents the message receiver and the
argsargument denotes the list of identities of the expressions representing message arguments.
ast_sub_tree/2declarations allow language-independent top down traversal of an AST. Language independent bottom up traversals are supported by the convention that the second argument of every AST node has the name
parentand refers to the parent node.