Zen
A cross-platform functional programming language
|
Concrete class for AST Node representing a function instantiation. More...
#include <Ast.hpp>
Public Member Functions | |
FunctionExpr (const QualifiedType &type, const FunctionDef &function, const ExprList &list) | |
Default constructor. | |
const FunctionDef & | getFunction () const |
Returns the function definition to be instantiated. | |
Private Member Functions | |
virtual void | visit (Expr::Visitor &visitor) const |
Abstract visitor function. | |
Private Attributes | |
const FunctionDef & | _function |
The function definition. |
Concrete class for AST Node representing a function instantiation.
This creates an instance of a function. For example:
function () MyFunction () {...}; ... local y = MyFunction[];
Here, y is an instance of X, which is a function definition.
FunctionExpr | ( | const QualifiedType & | type, |
const FunctionDef & | function, | ||
const ExprList & | list | ||
) | [inline] |
Default constructor.
type | Expression type |
function | The function definition to be instantiated (This is the same as type.getTypeSpec() ) |
list | The initialization parameters |
const FunctionDef& getFunction | ( | ) | const [inline] |
Returns the function definition to be instantiated.
void visit | ( | Expr::Visitor & | visitor | ) | const [private, virtual] |