#include <tree.h>
Public Member Functions | |
virtual void | checkVectorSize () const |
Check the consistency in vectors' size. | |
virtual void | emit (PreLinkBytecode &bytecodes) const |
Generate bytecode. | |
IfWhenNode (const SourcePos &sourcePos) | |
Constructor. | |
virtual Node * | optimize (std::wostream *dump) |
Optimize this node, return the optimized node. | |
virtual IfWhenNode * | shallowCopy () |
Return a shallow copy of the object (children point to the same objects) | |
virtual std::wstring | toNodeName () const |
Return a string representation of the name of this node. | |
virtual std::wstring | toWString () const |
Return a string representation of this node. | |
virtual ReturnType | typeCheck () const |
Typecheck this node, throw an exception if there is any type violation. | |
Public Attributes | |
bool | edgeSensitive |
if true, true block is triggered only if previous comparison was false ("when" block). If false, true block is triggered every time comparison is true | |
unsigned | endLine |
line of end keyword |
Node for L"if" and L"when". children[0] is expression children[1] is true block children[2] is false block
Aseba::IfWhenNode::IfWhenNode | ( | const SourcePos & | sourcePos | ) | [inline] |
void Aseba::IfWhenNode::checkVectorSize | ( | ) | const [virtual] |
Check the consistency in vectors' size.
Reimplemented from Aseba::Node.
Definition at line 223 of file tree-expand.cpp.
virtual IfWhenNode* Aseba::IfWhenNode::shallowCopy | ( | ) | [inline, virtual] |
Return a shallow copy of the object (children point to the same objects)
Implements Aseba::Node.
virtual std::wstring Aseba::IfWhenNode::toNodeName | ( | ) | const [inline, virtual] |
Return a string representation of the name of this node.
Implements Aseba::Node.
unsigned Aseba::IfWhenNode::endLine |