OpenClonk
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros
aul::ast::FunctionDecl Class Referenceabstract

#include <C4AulAST.h>

Inheritance diagram for aul::ast::FunctionDecl:
[legend]
Collaboration diagram for aul::ast::FunctionDecl:
[legend]

Public Member Functions

 FunctionDecl (const std::string &name)
 
virtual bool has_value () const
 
virtual void accept (::aul::AstVisitor *) const =0
 
virtual void accept (::aul::AstVisitor *v) const =0
 

Public Attributes

std::string name
 
bool is_global = false
 
const char * loc = nullptr
 
std::vector< Parameterparams
 
bool has_unnamed_params = false
 
std::unique_ptr< Blockbody
 

Detailed Description

Definition at line 390 of file C4AulAST.h.

Constructor & Destructor Documentation

aul::ast::FunctionDecl::FunctionDecl ( const std::string &  name)
inlineexplicit

Definition at line 394 of file C4AulAST.h.

394 : name(name) {}
std::string name
Definition: C4AulAST.h:395

Member Function Documentation

virtual void aul::ast::Node::accept ( ::aul::AstVisitor ) const
pure virtualinherited
virtual void aul::ast::Function::accept ( ::aul::AstVisitor v) const
pure virtualinherited
virtual bool aul::ast::Stmt::has_value ( ) const
inlinevirtualinherited

Reimplemented in aul::ast::Expr.

Definition at line 137 of file C4AulAST.h.

137 { return false; }

Member Data Documentation

std::unique_ptr<Block> aul::ast::Function::body
inherited

Definition at line 384 of file C4AulAST.h.

bool aul::ast::Function::has_unnamed_params = false
inherited

Definition at line 383 of file C4AulAST.h.

bool aul::ast::FunctionDecl::is_global = false

Definition at line 396 of file C4AulAST.h.

const char* aul::ast::Node::loc = nullptr
inherited

Definition at line 128 of file C4AulAST.h.

std::string aul::ast::FunctionDecl::name

Definition at line 395 of file C4AulAST.h.

std::vector<Parameter> aul::ast::Function::params
inherited

Definition at line 382 of file C4AulAST.h.


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