sammine-lang
Loading...
Searching...
No Matches
sammine_lang::AST::EnumDefAST Class Reference
Inheritance diagram for sammine_lang::AST::EnumDefAST:
Collaboration diagram for sammine_lang::AST::EnumDefAST:

Public Member Functions

 EnumDefAST (sammine_util::QualifiedName name, sammine_util::Location name_loc, std::vector< EnumVariantDef > variants)
Public Member Functions inherited from sammine_lang::AST::DefinitionAST
 DefinitionAST (NodeKind kind)
Public Member Functions inherited from sammine_lang::AST::AstBase
 AstBase (NodeKind kind)
NodeId id () const
NodeKind getKind () const
AstBase * join_location (AstBase *ast)
AstBase * join_location (std::shared_ptr< Token > tok)
AstBase * join_location (sammine_util::Location location)
sammine_util::Location get_location () const
void set_location (sammine_util::Location loc)
bool synthesized () const
Type get_type () const
Type set_type (const Type &t)
Public Member Functions inherited from sammine_lang::AST::Visitable
virtual void accept_vis (ASTVisitor *visitor)=0
virtual void walk_with_preorder (ASTVisitor *visitor)=0
virtual void walk_with_postorder (ASTVisitor *visitor)=0
virtual Type accept_synthesis (TypeCheckerVisitor *visitor)=0
virtual std::string getTreeName () const =0

Public Attributes

sammine_util::QualifiedName enum_name
std::vector< EnumVariantDefvariants
std::vector< std::string > type_params
bool is_integer_backed = false
bool is_exported = false
std::optional< std::string > backing_type_name
Public Attributes inherited from sammine_lang::AST::AstBase
bool pe = false
llvm::Value * val

Additional Inherited Members

Static Public Member Functions inherited from sammine_lang::AST::DefinitionAST
static bool classof (const AstBase *node)
Static Public Member Functions inherited from sammine_lang::AST::AstBase
static void reset_id_counter ()
static void set_properties (ASTProperties *p)
Protected Attributes inherited from sammine_lang::AST::AstBase
sammine_util::Location location

The documentation for this class was generated from the following file: