cymoca
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
Public Member Functions | Protected Attributes | List of all members
cymoca::ast::TBinary< Left, Right, Base > Class Template Reference

#include <node.h>

Inheritance diagram for cymoca::ast::TBinary< Left, Right, Base >:
Inheritance graph
Collaboration diagram for cymoca::ast::TBinary< Left, Right, Base >:
Collaboration graph

Public Member Functions

 TBinary (std::unique_ptr< Left > left, std::unique_ptr< Right > right)
 
Left * getLeft ()
 
Right * getRight ()
 
std::vector< INode * > getChildren () override
 
template<class T >
std::unique_ptr< INode > cloneBinary () const
 

Protected Attributes

std::unique_ptr< Left > m_left {}
 
std::unique_ptr< Right > m_right {}
 

Detailed Description

template<class Left, class Right, class Base>
class cymoca::ast::TBinary< Left, Right, Base >

A template for binary nodes.

Definition at line 63 of file node.h.

Constructor & Destructor Documentation

template<class Left, class Right, class Base>
cymoca::ast::TBinary< Left, Right, Base >::TBinary ( std::unique_ptr< Left >  left,
std::unique_ptr< Right >  right 
)
inline

Definition at line 69 of file node.h.

Member Function Documentation

template<class Left, class Right, class Base>
template<class T >
std::unique_ptr<INode> cymoca::ast::TBinary< Left, Right, Base >::cloneBinary ( ) const
inline

Definition at line 77 of file node.h.

template<class Left, class Right, class Base>
std::vector<INode *> cymoca::ast::TBinary< Left, Right, Base >::getChildren ( )
inlineoverride

Definition at line 73 of file node.h.

template<class Left, class Right, class Base>
Left* cymoca::ast::TBinary< Left, Right, Base >::getLeft ( )
inline

Definition at line 71 of file node.h.

template<class Left, class Right, class Base>
Right* cymoca::ast::TBinary< Left, Right, Base >::getRight ( )
inline

Definition at line 72 of file node.h.

Member Data Documentation

template<class Left, class Right, class Base>
std::unique_ptr<Left> cymoca::ast::TBinary< Left, Right, Base >::m_left {}
protected

Definition at line 65 of file node.h.

template<class Left, class Right, class Base>
std::unique_ptr<Right> cymoca::ast::TBinary< Left, Right, Base >::m_right {}
protected

Definition at line 66 of file node.h.


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