The StaDyn Programming Language
Source code documentation of StaDyn, a hybrid static and dynamic typing language.
|
Representation of the StaDyn Abstract Syntax Tree (AST). More...
Namespaces | |
package | Operations |
Provides double dispatch over types and operations. | |
Classes | |
class | ArgumentExpression |
Encapsulates a argument expression of our programming language. More... | |
class | ArithmeticExpression |
Encapsulates arithmetic binary expressions. More... | |
class | ArrayAccessExpression |
Encapsulates the array expression to access the concrete position. More... | |
class | AssertStatement |
Encapsulates a Assert statement of our programming languages. More... | |
class | AssignmentExpression |
Encapsulates assignment binary expressions. More... | |
class | AstNode |
Abstract class for all nodes that compounds the abstract syntax tree. More... | |
class | BaseCallExpression |
Encapsulates a invocation expression to base class. More... | |
class | BaseExpression |
Encapsulates a 'base' expression. More... | |
class | BinaryExpression |
Encapsulates a binary expression of our programming language. More... | |
class | BitwiseExpression |
Encapsulates a bitwise binary expression. More... | |
class | Block |
Encapsulates a block of statements. More... | |
class | BoolLiteralExpression |
Encapsulates a boolean literal expression. More... | |
class | BreakStatement |
Encapsulates a Break statement of our programming languages. More... | |
class | CastExpression |
Encapsulates a cast expression. More... | |
class | CatchStatement |
Encapsulates a Catch statement of our programming languages. More... | |
class | CharLiteralExpression |
class | ClassDefinition |
Encapsulates a definition of a concrete class. More... | |
class | CompoundExpression |
Encapsulates a set of expressions. More... | |
class | ConstantDefinition |
Encapsulates a constant definition. More... | |
class | ConstantFieldDefinition |
Encapsulates a constant field definition. More... | |
class | ConstructorDefinition |
Encapsulates a definition of a concrete constructor. More... | |
class | ContinueStatement |
Encapsulates a Continue statement of our programming languages. More... | |
class | Declaration |
Encapsulates a declaration of a concrete type. More... | |
class | DeclarationSet |
Encapsulates a statement with several declarations. More... | |
class | Definition |
Encapsulates a definition. More... | |
class | DoStatement |
Encapsulates a Do statement of our programming language. More... | |
class | DoubleLiteralExpression |
Encapsulates a string literal expression. More... | |
class | ExceptionManagementStatement |
Encapsulates a Try-Catch-finally statement of our programming languages. As C# states catch blcok and finally block can be optional, but not at the same time. More... | |
class | Expression |
Abstract class encapsulate a programming language expression. More... | |
class | FieldAccessExpression |
Encapsulates the expression to access a field. More... | |
class | FieldDeclaration |
Encapsulates a declaration of a concrete field. More... | |
class | FieldDeclarationSet |
Encapsulates a set of field declarations. More... | |
class | FieldDefinition |
Encapsulates a definition of a concrete field. More... | |
class | ForeachStatement |
Encapsulates a Foreach statement of our programming languages. More... | |
class | ForStatement |
Encapsulates a For statement of our programming languages. More... | |
class | IdDeclaration |
Encapsulates a declaration. More... | |
class | IdentifierExpression |
Encapsulates a name expression of our programming language. More... | |
class | IfElseStatement |
Encapsulates a If-Else statement of our programming language. More... | |
class | InterfaceDefinition |
Encapsulates a definition of a concrete interface. More... | |
class | IntLiteralExpression |
Encapsulates a integer literal expression. More... | |
class | InvocationExpression |
Encapsulates a invocation expression. More... | |
class | IsExpression |
Encapsulates a Is expression. More... | |
class | LogicalExpression |
Encapsulates a logical binary expression. More... | |
class | MethodDeclaration |
Encapsulates a declaration of a concrete method. More... | |
class | MethodDefinition |
Encapsulates a definition of a concrete method. More... | |
class | MoveStatement |
Encapsulates a Move instruction to use in SSA algorithm More... | |
class | Namespace |
Encapsulates a namespace definition. More... | |
class | NewArrayExpression |
Encapsulates a new array expression. More... | |
class | NewExpression |
Encapsulates a new expression. More... | |
class | NullExpression |
Encapsulates a null expression. More... | |
struct | Parameter |
Encapsulates a parameter declaration. More... | |
class | PropertyDefinition |
Encapsulates a property definition. More... | |
class | QualifiedIdentifierExpression |
Encapsulates the qualified name expression. More... | |
class | RelationalExpression |
Encapsulates a relational binary expression. More... | |
class | ReturnStatement |
Encapsulates a Return statement of our programming languages. More... | |
class | SingleIdentifierExpression |
Encapsulates a identifier expression of our programming language. More... | |
class | SourceFile |
Encapsulates the source code. More... | |
class | Statement |
Abstract class represents a programming language statement. More... | |
class | StringLiteralExpression |
Encapsulates a string literal expression. More... | |
class | SwitchLabel |
Encapsulates a switch label (Case + condition or Default section). More... | |
class | SwitchSection |
Encapsulates a Case statement of our programming languages. More... | |
class | SwitchStatement |
Encapsulates a Switch statement of our programming languages. More... | |
class | TernaryExpression |
Encapsulates a ternary expression of our programming language. More... | |
class | ThetaStatement |
Encapsulates a Theta function to use in SSA algorithm. More... | |
class | ThisExpression |
Encapsulates a 'this' expression. More... | |
class | ThrowStatement |
Encapsulates a Throw statement of our programming languages. More... | |
class | TypeDefinition |
Encapsulates a definition of a concrete class or interface. More... | |
class | UnaryExpression |
Encapsulates a unary expression of our programming language. More... | |
class | WhileStatement |
Encapsulates a While statement of our programming languages. More... | |
Representation of the StaDyn Abstract Syntax Tree (AST).
Arithmetic binary operators
Enumerator | |
---|---|
Minus |
a - b Plus, |
Plus |
a + b |
Mult |
a * b |
Div |
a / b |
Mod |
a % b |
Definition at line 31 of file ArithmeticExpression.cs.
enum AST.ArrayOperator |
Assignment binary operators
Definition at line 31 of file AssignmentExpression.cs.
enum AST.BitwiseOperator |
Bitwise binary operators
Enumerator | |
---|---|
BitwiseOr |
a | b |
BitwiseAnd |
a & b |
BitwiseXOr |
a ^ b |
ShiftLeft |
a << b |
ShiftRight |
a >> b |
Definition at line 32 of file BitwiseExpression.cs.
enum AST.IdentifierMode |
Represents how to use the identifier
Enumerator | |
---|---|
Instance | |
UserType | |
NameSpace |
Definition at line 36 of file SingleIdentifierExpression.cs.
enum AST.LogicalOperator |
Logical binary operators
Enumerator | |
---|---|
Or |
a || b |
And |
a && b |
Definition at line 32 of file LogicalExpression.cs.
Relational binary operators
Enumerator | |
---|---|
NotEqual |
a != b |
Equal |
a == b |
LessThan |
a < b |
GreaterThan |
a > b |
LessThanOrEqual |
a <= b |
GreaterThanOrEqual |
a >= b |
Definition at line 32 of file RelationalExpression.cs.
enum AST.SectionType |
Indicates if it is a case statement or a default case.
Enumerator | |
---|---|
Case | |
Default |
Definition at line 31 of file SwitchLabel.cs.
enum AST.TernaryOperator |
Ternary operators
Enumerator | |
---|---|
Question |
op1 ? op2 : op3 |
Definition at line 31 of file TernaryExpression.cs.
enum AST.UnaryOperator |
Unary operators
Definition at line 32 of file UnaryExpression.cs.