sammine-lang
Loading...
Searching...
No Matches
sammine_lang::AST::PrototypeAST Class Reference

A prototype to present "func func_name(...) -> type;". More...

#include <Ast.h>

Inheritance diagram for sammine_lang::AST::PrototypeAST:
Collaboration diagram for sammine_lang::AST::PrototypeAST:

Public Member Functions

 PrototypeAST (std::shared_ptr< Token > functionName, std::shared_ptr< Token > returnType, std::vector< std::unique_ptr< AST::TypedVarAST > > parameterVectors)
 
 PrototypeAST (std::shared_ptr< Token > functionName, std::vector< std::unique_ptr< AST::TypedVarAST > > parameterVectors)
 
virtual std::string getTreeName () override
 
void accept_vis (ASTVisitor *visitor) override
 
virtual void walk_with_preorder (ASTVisitor *visitor) override
 
virtual void walk_with_postorder (ASTVisitor *visitor) override
 
virtual Type accept_synthesis (TypeCheckerVisitor *visitor) override
 
- Public Member Functions inherited from sammine_lang::AST::AstBase
AstBasejoin_location (AstBase *ast)
 
AstBasejoin_location (std::shared_ptr< Token > tok)
 
AstBasejoin_location (sammine_util::Location location)
 
sammine_util::Location get_location ()
 
bool synthesized () const
 
bool checked () const
 
void set_checked ()
 

Public Attributes

llvm::Function * function
 
std::string functionName
 
std::string returnType
 
std::vector< std::unique_ptr< AST::TypedVarAST > > parameterVectors
 
- Public Attributes inherited from sammine_lang::AST::AstBase
bool pe = false
 
llvm::Value * val
 
Type type = Type::NonExistent()
 

Additional Inherited Members

- Protected Attributes inherited from sammine_lang::AST::AstBase
sammine_util::Location location
 

Detailed Description

A prototype to present "func func_name(...) -> type;".

Member Function Documentation

◆ accept_synthesis()

virtual Type sammine_lang::AST::PrototypeAST::accept_synthesis ( TypeCheckerVisitor * visitor)
inlineoverridevirtual

◆ accept_vis()

void sammine_lang::AST::PrototypeAST::accept_vis ( ASTVisitor * visitor)
inlineoverridevirtual

◆ getTreeName()

virtual std::string sammine_lang::AST::PrototypeAST::getTreeName ( )
inlineoverridevirtual

◆ walk_with_postorder()

virtual void sammine_lang::AST::PrototypeAST::walk_with_postorder ( ASTVisitor * visitor)
inlineoverridevirtual

◆ walk_with_preorder()

virtual void sammine_lang::AST::PrototypeAST::walk_with_preorder ( ASTVisitor * visitor)
inlineoverridevirtual

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