$search
#include <tree.h>

Public Member Functions | |
| AbstractTreeNode (const SourcePos &sourcePos) | |
| Constructor. | |
| virtual void | emit (PreLinkBytecode &bytecodes) const |
| Generate bytecode. | |
| virtual unsigned | getStackDepth () const |
| Return the stack depth requirement for this node and its children. | |
| virtual Node * | optimize (std::wostream *dump) |
| Optimize this node, return the optimized node. | |
| virtual ReturnType | typeCheck () const |
| Typecheck this node, throw an exception if there is any type violation. | |
Virtual class for abstraction nodes abort() if you try to typeCheck(), optimize() or emit() to force correct expansion into regular Aseba nodes
Definition at line 483 of file tree.h.
| Aseba::AbstractTreeNode::AbstractTreeNode | ( | const SourcePos & | sourcePos | ) | [inline] |
| virtual void Aseba::AbstractTreeNode::emit | ( | PreLinkBytecode & | bytecodes | ) | const [inline, virtual] |
| virtual unsigned Aseba::AbstractTreeNode::getStackDepth | ( | ) | const [inline, virtual] |
Return the stack depth requirement for this node and its children.
Reimplemented from Aseba::Node.
| virtual Node* Aseba::AbstractTreeNode::optimize | ( | std::wostream * | dump | ) | [inline, virtual] |
Optimize this node, return the optimized node.
Implements Aseba::Node.
| virtual ReturnType Aseba::AbstractTreeNode::typeCheck | ( | ) | const [inline, virtual] |
Typecheck this node, throw an exception if there is any type violation.
Reimplemented from Aseba::Node.