#include <tree.h>
Public Member Functions | |
ArrayReadNode (const SourcePos &sourcePos, unsigned arrayAddr, unsigned arraySize, const std::string &arrayName) | |
Constructor. | |
virtual void | emit (PreLinkBytecode &bytecodes) const |
Generate bytecode. | |
virtual Node * | optimize (std::ostream *dump) |
Optimize this node, return the optimized node. | |
virtual std::string | toNodeName () const |
Return a string representation of the name of this node. | |
virtual std::string | toString () 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 | |
unsigned | arrayAddr |
address of the first element of the array | |
std::string | arrayName |
name of the array (for debug) | |
unsigned | arraySize |
size of the array, might be used to assert compile-time access checks |
Node for reading from an array. children[0] is the index in the array
Definition at line 353 of file tree.h.
virtual std::string Aseba::ArrayReadNode::toNodeName | ( | ) | const [inline, virtual] |
Return a string representation of the name of this node.
Implements Aseba::Node.
virtual ReturnType Aseba::ArrayReadNode::typeCheck | ( | ) | const [inline, virtual] |
Typecheck this node, throw an exception if there is any type violation.
Reimplemented from Aseba::Node.
unsigned Aseba::ArrayReadNode::arrayAddr |
std::string Aseba::ArrayReadNode::arrayName |
unsigned Aseba::ArrayReadNode::arraySize |