|
topazc
|
Header file for defining AST tree elements. More...
#include "../lexer/token.hpp"#include <uchar.h>#include <variant>#include <memory>#include <vector>#include <cmath>

Go to the source code of this file.
Classes | |
| struct | AST::Type |
| Structure for describing the type. More... | |
| struct | AST::Value |
| Structure for describing the value. More... | |
| struct | AST::Argument |
| Structure for describing the argument (in function or method). More... | |
| class | AST::Stmt |
| Base class of statement. More... | |
| class | AST::Expr |
| Base class of expression. More... | |
| class | AST::Literal |
| Base class of literal. More... | |
| class | AST::BoolLiteral |
| Boolean literal. More... | |
| class | AST::CharacterLiteral |
| Character literal. More... | |
| class | AST::ShortLiteral |
| Short literal. More... | |
| class | AST::IntLiteral |
| Int literal. More... | |
| class | AST::LongLiteral |
| Long literal. More... | |
| class | AST::FloatLiteral |
| Float literal. More... | |
| class | AST::DoubleLiteral |
| Double literal. More... | |
| class | AST::StringLiteral |
| String literal. More... | |
| class | AST::BinaryExpr |
| Binary expression container. More... | |
| class | AST::UnaryExpr |
| Unary expression container. More... | |
| class | AST::VarExpr |
| Variable expression container. More... | |
| class | AST::FuncCallExpr |
| Function calling expression container. More... | |
| class | AST::ChainObjects |
| Chain of objects expression container. More... | |
| class | AST::VarDeclStmt |
| Statement of variable declaration. More... | |
| class | AST::VarAsgnStmt |
| Statement of assignment of variable. More... | |
| class | AST::FuncDeclStmt |
| Statement of functions declaration. More... | |
| class | AST::FuncCallStmt |
| Statement of functions calling. More... | |
| class | AST::ReturnStmt |
| Statement of 'return'. More... | |
| class | AST::IfElseStmt |
| Statement of control flow operator. More... | |
| class | AST::WhileCycleStmt |
| Statement of while cycle. More... | |
| class | AST::DoWhileCycleStmt |
| Statement of do-while cycle. More... | |
| class | AST::ForCycleStmt |
| Statement of for cycle. More... | |
| class | AST::BreakStmt |
| Statement of break. More... | |
| class | AST::ContinueStmt |
| Statement of break. More... | |
| class | AST::ModuleStmt |
| Statement of module definition. More... | |
| class | AST::UseModuleStmt |
| Statement of import the module. More... | |
| class | AST::ExternStmt |
| Statement of extern calls. More... | |
Namespaces | |
| namespace | AST |
Typedefs | |
| using | AST::StmtPtr = std::unique_ptr<Stmt> |
| using | AST::ExprPtr = std::unique_ptr<Expr> |
Enumerations | |
| enum | AST::TypeValue { AST::TYPE_BOOL , AST::TYPE_CHAR , AST::TYPE_SHORT , AST::TYPE_INT , AST::TYPE_LONG , AST::TYPE_FLOAT , AST::TYPE_DOUBLE , AST::TYPE_NOTH , AST::TYPE_STRING_LIT , AST::TYPE_TRAIT , AST::TYPE_CLASS , AST::TYPE_MODULE } |
| Type values enum. More... | |
| enum | AST::AccessModifier { AST::ACCESS_NONE , AST::ACCESS_PRIVATE , AST::ACCESS_PUBLIC } |
| Access modifier for statements. More... | |