Package-level declarations
Types
Represents an assert statement
Statement used to interrupt further execution of a loop body and exit the respective loop context. Can have a loop label, e.g. in Java, to specify which of the nested loops should be broken out of.
Case statement of the form case expression :
that serves as entry point for switch statements, the only allowed substatements are side effekt free primitive expression for the selector to choose from. THe statements executed after the entry are on the same AST hierarchy in the parent compound statement.
Statement used to interrupt further execution of a loop body and jump to the evaluation of the loop condition. Can have a loop label, e.g. in Java, to specify which of the nested loops condition should be reevaluated.
A Statement, which contains a single or multiple Declarations. Usually these statements occur if one defines a variable within a function body. A function body is a [ ], which can only contain other statements, but not declarations. Therefore, declarations are wrapped in a DeclarationStatement.
Default statement of the form default:
that serves as entry point for switch statements. The statements executed after the entry are on the same AST hierarchy in the parent compound statement.
A Block of code containing code in a different language that is not parsable with the same frontend as the enclosing language.
Represent a for statement of the form for(variable ... iterable){...}
that executes the loop body for each instance of an element in iterable
that is temporarily stored in variable
.
Represents an iterating loop statement of the form for(initializer; condition; iteration){...}
that declares variables, can change them in an iteration statement and is executed until the condition evaluates to false.
Represents a condition control flow statement, usually indicating by If
.
A label attached to a statement that is used to change control flow by labeled continue and breaks (Java) or goto(C++).
This Node is a generalization of all looping statements and serves duplication reduction. All Looping statements can be identified by if they inherit from this class. Loops deviate from other nods in the way they change a programs control flow, and do so in combination with other nodes, e.g. BreakStatement.
Represents a statement that returns out of the current function.
This Node is the most basic node type that represents source code elements which represents executable code.
Represents a Java or C++ switch statement of the switch (selector) {...}
that can include case and default statements. Break statements break out of the switch and labeled breaks in Java are handled properly.
Represents a throw
or raise
statement/expression.
A Statement which represents a try/catch block, primarily used for exception handling.
Represents a conditional loop statement of the form: while(...){...}
. The loop body is executed until condition evaluates to false for the first time.