Zen
A cross-platform functional programming language
|
AST Nodes representing closures that call functions at the start of a continuation. More...
#include <Ast.hpp>
Public Member Functions | |
CallClosure (const VariableRefList &xRefList, const Ast::VariableDef &vdef, const Ast::Invoker &invoker) | |
Default constructor. | |
const VariableDef & | getDef () const |
Returns the variable that holds the return value of this closure. | |
const Invoker & | getInvoker () const |
Returns the invoker for this closure. | |
Private Member Functions | |
virtual void | visit (Visitor &visitor) const |
Abstract visitor function. | |
virtual const Ast::QualifiedType & | getOutType () const |
Returns the out-param type for init closures. | |
Private Attributes | |
const Ast::VariableDef & | _vdef |
The variable identifying the closure. | |
const Ast::Invoker & | _invoker |
The closure invoker. |
AST Nodes representing closures that call functions at the start of a continuation.
CallClosure | ( | const VariableRefList & | xRefList, |
const Ast::VariableDef & | vdef, | ||
const Ast::Invoker & | invoker | ||
) | [inline] |
Default constructor.
xRefList | The list of external variables referenced by this closure. |
vdef | The variable that uniquely identifies this closure in the continuation. |
invoker | The invocation (function, functor, etc) that gets called within the closure. |
const VariableDef& getDef | ( | ) | const [inline] |
Returns the variable that holds the return value of this closure.
const Invoker& getInvoker | ( | ) | const [inline] |
Returns the invoker for this closure.
virtual const Ast::QualifiedType& getOutType | ( | ) | const [inline, private, virtual] |
void visit | ( | Visitor & | visitor | ) | const [private, virtual] |