|
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.