NodeTypeCode

Language-Agnostic Syntax Tree Node Type Code. A UDA ´@isA_$NODETYPE´ => inherit $NODETYPE. Expresses inheritance via UDAs, for instance: @isA_token comment means that comment is a kind of token.

Values

ValueMeaning
any

Any kind of node.

token

Token|Terminal node. (typically un-named in tree-sitter terminology).

comment
@(isA_token)

Any kind of comment.

comment_multiLine
@(isA_comment)

Multi-Line Comment.

comment_endOfLine
@(isA_comment)

End-Of-Line Comment.

expr
@(isA_node)

Expression.

expr_ident_rvalue
@(isA_node)

Identifier Expression (r-value).

expr_ident_lvalue
@(isA_node)

Identifier Expression (l-value).

expr_unary
@(isA_expr)

Unary Expression.

expr_unary_cast
@(isA_expr_unary)

Cast Expression.

expr_unary_arith_negation
@(isA_expr_unary_arith)

Arithmetic negation.

expr_unary_arith_plus
@(isA_expr_unary_arith)

Arithmetic plus.

expr_binary
@(isA_expr)

Binary Expression.

expr_binary_arith_addition
@(isA_expr_binary_arith)

Addition.

expr_binary_arith_multiplication
@(isA_expr_binary_arith)

Multiplication.

expr_binary_arith_division
@(isA_expr_binary_arith)

Division.

expr_binary_arith_exponentation
@(isA_expr_binary_arith)

Exponentation|Power.

expr_ternary
@(isA_expr)

Ternary Expression.

expr_assign
@(isA_expr)

Assign Expression.

expr_functionCall
@(isA_expr)

Function Call Expression.

litr
@(isA_token)

Literal (Constant).

litr_string
@(isA_litr)

String Literal.

litr_string_standard
@(isA_litr)

Standard-String Literal.

litr_string_raw
@(isA_litr)

Raw-String Literal.

litr_string_quoted
@(isA_litr)

Quoted-String Literal (in dlang.org).

litr_string_standard_interpolating
@(isA_litr)

Interpolating Standard-String Literal.

litr_string_raw_interpolating
@(isA_litr)

Interpolating Raw-String Literal.

litr_string_quoted_interpolating
@(isA_litr)

Interpolating Quoted-String Literal (in dlang.org).

litr_scalar
@(isA_litr)

Scalar Literal.

litr_scalar_character
@(isA_litr_scalar)

Character Literal.

litr_numeric
@(isA_litr_scalar)

Numeric Literal.

litr_boolean
@(isA_litr_numeric)

Boolean Literal.

litr_numeric_integer
@(isA_litr_numeric)

Integer Numeric Literal.

litr_numeric_integer_signed
@(isA_litr_numeric_integer)

Signed Integer Numeric Literal.

litr_numeric_integer_unsigned
@(isA_litr_numeric_integer)

Signed Integer Numeric Literal.

litr_numeric_floatingPoint
@(isA_litr_numeric)

Floating-Point|Real|Decimal Numeric Literal.

symbolReference
@(isA_token)

Symbol reference.

decl
@(isA_node)

Declaration.

decl_type
@(isA_decl)

Type Declaration.

decl_module
@(isA_decl_type)

Module Declaration.

decl_package
@(isA_decl_type)

Package Declaration.

decl_namespace
@(isA_decl_type)

Namespace Declaration.

decl_type_label
@(isA_decl_type)

Label Declaration.

decl_type_function
@(isA_decl_type)

Function Type Declaration.

decl_type_class
@(isA_decl_type)

Class Type Declaration.

decl_type_interface
@(isA_decl_type)

Interface Type Declaration.

decl_type_enumeration
@(isA_decl_type)

Enumeration Type Declaration.

decl_type_union
@(isA_decl_type)

Union Type Declaration.

decl_type_struct
@(isA_decl_type)

Struct Type Declaration.

decl_constant_enumerator
@(isA_decl)

Enumerator Constant Declaration.

type_scalar
@(isA_type)
type_scalar_numeric
@(isA_type_scalar)

Numeric Scalar Type.

type_vector
@(isA_type)

SIMD fixed-length vector type of scalar elements.

type_vector_integer
@(isA_type_vector)

SIMD fixed-length vector type of scalar elements.

type_vector_floatingPoint
@(isA_type_vector)

SIMD fixed-length vector type of scalar elements.

type_scalar_arith
@(isA_type_scalar)

Arithmetic Type.

type_scalar_character
@(isA_type_scalar)

Character Type.

type_string
@(isA_type)

String Type.

type_aggregate
@(isA_type)

Aggregate Type.

type_value_aggregate
@(isA_type_aggregate)
type_struct
@(isA_type_value_aggregate)

Struct Type having value semantics.

type_anonymous_struct
@(isA_type_aggregate)

Anonymous Struct Type.

type_aggregate_tupletype_anonymous_struct
@(isA_type_aggregate)

Tuple Type.

type_aggregate_union
@(isA_type_aggregate)

Union type.

type_aggregate_class
@(isA_type_aggregate)

Class type.

type_enumeration
@(isA_type)

Enumeration Type.

type_array
@(isA_type)

Array type.

type_array_slice
@(isA_type)

Array slice type.

type_machine_word
@(isA_type)

Type of size machine word.

type_addr
@(isA_machinewordtype)

Address type.

type_size
@(isA_machinewordtype)

Size type.

type_ptr
@(isA_type_addr)

Pointer type.

type_ref
@(isA_type_addr)

Reference type.

functionType
@(isA_type)

Function type.

defi
@(isA_node)

Definition.

defi_type
@(isA_defi)

Type Definition.

defi_type_module
@(isA_defi_type)

Module Definition.

defi_type_package
@(isA_defi_type)

Package Definition.

defi_type_namespace
@(isA_defi_type)

Namespace Definition.

defi_type_label
@(isA_defi_type)

Label definition.

defi_type_function
@(isA_defi_type)

Function definition.

defi_type_class
@(isA_defi_type)

Class definition.

defi_type_interface
@(isA_defi_type)

Interface definition.

defi_type_enumeration
@(isA_defi_type)

Enumeration definition.

defi_type_union
@(isA_defi_type)

Union definition.

defi_type_struct
@(isA_defi_type)

Struct definition.

defi_type_enumerator
@(isA_defi_type)

Enumerator definition.

defi_variable
@(isA_defi)

Variable definition.

defi_variable_parameter
@(isA_defi_variable)

Function parameter (local variable) definition.

directive
@(isA_node)

Directive.

directive_pragma
@(isA_directive)

Pragma directive.

inst
@(isA_node)

Instance.

inst_variable
@(isA_inst)

Variable instance.

inst_function
@(isA_inst)

Function instance.

inst_class
@(isA_inst)

Class instance.

inst_interface
@(isA_inst)

Interface instance.

inst_enumeration
@(isA_inst)

Enumeration instance.

inst_union
@(isA_inst)

Union instance.

inst_struct
@(isA_inst)

Struct instance.

stmt
@(isA_node)

Statement.

stmt_assignment
@(isA_stmt)

Assignment Statement.

stmt_assignment_add
@(isA_stmt_assignment)
stmt_assignment_sub
@(isA_stmt_assignment)
stmt_assignment_mul
@(isA_stmt_assignment)
stmt_assignment_div
@(isA_stmt_assignment)
stmt_assignment_pow
@(isA_stmt_assignment)
stmt_assignment_shl
@(isA_stmt_assignment)
stmt_assignment_shr
@(isA_stmt_assignment)
stmt_assignment_rol
@(isA_stmt_assignment)
stmt_assignment_ror
@(isA_stmt_assignment)
stmt_assignment_cat
@(isA_stmt_assignment)
stmt_cflow
@(isA_stmt)

Control-Flow Statement.

stmt_if
@(isA_stmt_cflow)

If statement.

stmt_switch
@(isA_stmt_cflow)

Switch statement.

stmt_for
@(isA_stmt_cflow)

For statement.

stmt_while
@(isA_stmt_cflow)

While statement.

stmt_doWhile
@(isA_stmt_cflow)

Do-while statement.

stmt_break
@(isA_stmt_cflow)

Break statement.

stmt_continue
@(isA_stmt_cflow)

Continue statement.

stmt_return
@(isA_stmt_cflow)

Return statement.

stmt_goto
@(isA_stmt_cflow)

Goto statement.

stmt_block_try
@(isA_stmt_cflow)

Try block statement.

stmt_block_catch
@(isA_stmt_cflow)

Catch block statement.

stmt_block_finally
@(isA_stmt_cflow)

Finally block statement.

stmt_throw
@(isA_stmt)

Throw statement.

stmt_import
@(isA_stmt)

Import statement.

stmt_import_module
@(isA_stmt_import)

Import stmt of public module(s).

stmt_import_module_public
@(isA_stmt_import_module)

Import stmt of public module(s).

stmt_import_module_private
@(isA_stmt_import_module)

Import stmt of private module(s) (default).

stmt_import_symbol
@(isA_stmt_import_module)

Symbol import statement.

stmt_import_symbol_public
@(isA_stmt_import_module)

Import stmt of public symbol(s).

stmt_import_symbol_private
@(isA_stmt_import_module)

Import stmt of private symbol(s).

stmt_namespace_using
@(isA_stmt)

Namespace using. (C++).

modi_access
@(isA_node)

Access modifier.

modi_access_public
@(isA_modi_access)

Unrestricted access.

modi_access_protected
@(isA_modi_access)

Access restricted to class and sub-classes. (C++'s protected).

modi_access_package
@(isA_modi_access)

Access restricted to current package. (D's package).

modi_access_private_aggregate
@(isA_modi_access)

Aggregate-scope private qualifier (C++'s private).

modi_access_private_module
@(isA_modi_access)

Module-scope private qualifier (D's private).

modi_access_mutable
@(isA_modi_access)

Mutable qualifier.

modi_access_constant
@(isA_modi_access)

Constant qualifier.

modi_access_immutable
@(isA_modi_access)

Immutable qualifier.

modi_access_unique
@(isA_modi_access)

Unique-reference qualifier.

modi_access_owned
@(isA_modi_access_unique)

Unique-and-owning-reference qualifier. See Mojo's owned.

modi_access_scope
@(isA_modi_access)

Scope qualifier.

annotation
@(isA_node)
attr
@(isA_node)
attr_inline
@(isA_attr)

Attribute inline.

decorator
@(isA_node)
language_specific
@(isA_node)

Such C Preprocessor (CPP) directives.

Meta