sammine-lang
Loading...
Searching...
No Matches
AstBase.h File Reference

Defines the AST Abstract class for printing out AST Nodes. More...

#include "ast/AstDecl.h"
#include "ast/ASTProperties.h"
#include "lex/Lexer.h"
#include "lex/Token.h"
#include "typecheck/Types.h"
#include "util/LexicalContext.h"
#include "util/Utilities.h"
#include "llvm/Support/Casting.h"
#include <atomic>
#include <stack>
Include dependency graph for AstBase.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  sammine_lang::AST::ASTPrinter
class  sammine_lang::AST::ASTVisitor
class  sammine_lang::AST::LexicalStack< T, S >
class  sammine_lang::AST::ScopedASTVisitor
class  sammine_lang::AST::TypeCheckerVisitor
class  sammine_lang::AST::Visitable
class  sammine_lang::AST::AstBase

Enumerations

enum class  NodeKind {
  ProgramAST , PrototypeAST , TypedVarAST , BlockAST ,
  FirstExpr , VarDefAST = FirstExpr , NumberExprAST , StringExprAST ,
  BoolExprAST , CharExprAST , BinaryExprAST , CallExprAST ,
  ReturnExprAST , UnitExprAST , VariableExprAST , IfExprAST ,
  DerefExprAST , AddrOfExprAST , AllocExprAST , FreeExprAST ,
  ArrayLiteralExprAST , IndexExprAST , LenExprAST , UnaryNegExprAST ,
  StructLiteralExprAST , FieldAccessExprAST , CaseExprAST , WhileExprAST ,
  TupleLiteralExprAST , LastExpr = TupleLiteralExprAST , FirstDef , FuncDefAST = FirstDef ,
  ExternAST , StructDefAST , EnumDefAST , TypeAliasDefAST ,
  TypeClassDeclAST , TypeClassInstanceAST , LastDef = TypeClassInstanceAST
}

Detailed Description

Defines the AST Abstract class for printing out AST Nodes.