[−][src]Module full_moon::ast
Utilities for ASTs (Abstract Syntax Trees). Contains all nodes used by Full Moon (such as blocks).
Modules
owned | Exposes the |
punctuated | A punctuated sequence of syntax tree nodes separated by punctuation (tokens). |
span | A representation of a "contained span", or a span within specific bounds. |
Structs
Assignment | An assignment, such as |
Ast | An abstract syntax tree, contains all the nodes used in the code |
BinOpRhs | A binary operation, such as ( |
Block | A block of statements, such as in if/do/etc block |
Do | A |
ElseIf | An elseif block in a bigger |
FunctionBody | A function body, everything except |
FunctionCall | A function being called, such as |
FunctionDeclaration | A normal function declaration, supports simple declarations like |
FunctionName | A function name when being declared |
GenericFor | A generic for loop, such as |
If | An if statement |
LocalAssignment | An assignment to a local variable, such as |
LocalFunction | A declaration of a local function, such as |
MethodCall | A method call, such as |
NumericFor | A numeric for loop, such as |
Repeat | A repeat loop |
Return | A |
TableConstructor | A table being constructed, such as |
VarExpression | A complex expression used by |
While | A while loop |
Enums
AstError | An error that occurs when creating the ast after tokenizing |
BinOp | Operators that require two operands, such as X + Y or X - Y |
Call | Something being called |
Expression | An expression, mostly useful for getting values |
Field | Fields of a |
FunctionArgs | Arguments used for a function |
Index | The indexing of something, such as |
LastStmt | The last statement of a |
Parameter | A parameter in a function declaration |
Prefix | A node used before another in cases such as function calling
The |
Stmt | A statement that stands alone |
Suffix | A suffix in certain cases, such as |
UnOp | Operators that require just one operand, such as #X |
Value | Values that cannot be used standalone, but as part of things such as statements |
Var | Used in |
Type Definitions
TableConstructorField | A |