aul::ast::FunctionExpr Class Referenceabstract

#include <C4AulAST.h>

Inheritance diagram for aul::ast::FunctionExpr:
Collaboration diagram for aul::ast::FunctionExpr:

Public Member Functions

bool has_value () const override
virtual void accept (::aul::AstVisitor *) const =0
virtual void accept (::aul::AstVisitor *v) const =0

Public Attributes

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

Detailed Description

Definition at line 394 of file C4AulAST.h.

Member Function Documentation

◆ accept() [1/2]

virtual void aul::ast::Node::accept ( ::aul::AstVisitor ) const
pure virtualinherited

◆ accept() [2/2]

virtual void aul::ast::Function::accept ( ::aul::AstVisitor v) const
pure virtualinherited

◆ has_value()

bool aul::ast::Expr::has_value ( ) const

Reimplemented from aul::ast::Stmt.

Definition at line 145 of file C4AulAST.h.

145 { return true; }

Member Data Documentation

◆ body

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

Definition at line 379 of file C4AulAST.h.

◆ has_unnamed_params

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

Definition at line 378 of file C4AulAST.h.

◆ loc

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

Definition at line 123 of file C4AulAST.h.

◆ params

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

Definition at line 377 of file C4AulAST.h.

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