Language-independent Queries
This page is a glimpse at StarTransformer, the language-independent follow-up of JTransformer. It documents already available predicates that can be used to query ASTs of any language for which a Meta-Model has been specified.
Known Languages
Language Meta-Model
The predicates used to specify the Meta-Model of any language should not be queried directly, since they represent the most low-level details. Much more convenient predicates for querying the metamodel, and analysing, accessing, or navigating an AST in a language-independent manner are documented in the sections below.
AST Nodes and AST Relations of a Language
Meta-level information about the structure of a language's AST (AST nodes and relations between them):
- ast_node_term→ rename to “ast_node_template”
- ast_relation_term → rename to “ast_relation_template”
AST Access and Navigation
Getting the complete AST node for an id or just its attribute values:
Navigation through an AST along arbitrary edges (that is, arguments referring to other nodes):
Particular support for navigating upwards (to immediate parents and transitive ancestors):
Particular support for navigating downwards (to explicit and implicit subtrees):


