cymoca
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
Public Member Functions | Protected Attributes | List of all members
cymoca::ast::expression::Function Class Reference

#include <expression.h>

Inheritance diagram for cymoca::ast::expression::Function:
Inheritance graph
Collaboration diagram for cymoca::ast::expression::Function:
Collaboration graph

Public Member Functions

void enter (listener::Base &listener) override
 
void exit (listener::Base &listener) override
 
 Function (std::unique_ptr< Reference > ref, std::unique_ptr< List > args)
 
const Reference & getReference () const
 
std::vector< INode * > getChildren () override
 
std::unique_ptr< INode > clone () const override
 
- Public Member Functions inherited from cymoca::ast::INode
virtual ~INode ()
 
template<class T >
std::unique_ptr< T > cloneAs ()
 

Protected Attributes

std::unique_ptr< Reference > m_ref
 
std::unique_ptr< List > m_args
 

Detailed Description

A function call.

Definition at line 89 of file expression.h.

Constructor & Destructor Documentation

cymoca::ast::expression::Function::Function ( std::unique_ptr< Reference >  ref,
std::unique_ptr< List >  args 
)
inlineexplicit

Definition at line 96 of file expression.h.

Member Function Documentation

std::unique_ptr<INode> cymoca::ast::expression::Function::clone ( ) const
inlineoverridevirtual

Perform a deep copy of this node.

Implements cymoca::ast::INode.

Definition at line 102 of file expression.h.

void cymoca::ast::expression::Function::enter ( listener::Base &  listener)
inlineoverridevirtual

A double dispatch entrace hook for listeners.

Implements cymoca::ast::INode.

Definition at line 95 of file expression.h.

void cymoca::ast::expression::Function::exit ( listener::Base &  listener)
inlineoverridevirtual

A double dispatch exit hook for listeners.

Implements cymoca::ast::INode.

Definition at line 95 of file expression.h.

std::vector<INode *> cymoca::ast::expression::Function::getChildren ( )
inlineoverridevirtual

Returns a list of children (non-owning).

Implements cymoca::ast::INode.

Definition at line 99 of file expression.h.

const Reference& cymoca::ast::expression::Function::getReference ( ) const
inline

Definition at line 98 of file expression.h.

Member Data Documentation

std::unique_ptr<List> cymoca::ast::expression::Function::m_args
protected

Definition at line 92 of file expression.h.

std::unique_ptr<Reference> cymoca::ast::expression::Function::m_ref
protected

Definition at line 91 of file expression.h.


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