Om  1.0.0
A universal framework for multimedia simulation
Public Member Functions | Static Public Member Functions | List of all members
om::scripting::mir::lang::NewArrayExpression Class Reference

A class that represents an array-type allocation expression. More...

#include <omScriptingMirExpressions.h>

Inheritance diagram for om::scripting::mir::lang::NewArrayExpression:
om::scripting::mir::lang::Expression om::scripting::mir::lang::ASTNode

Public Member Functions

 NewArrayExpression (const Shared< lang::Type > &newType)
 Create a new array expression object with the specified base array type. More...
 
const Shared< lang::Type > & getType () const
 Return a pointer to an object representing the base type of the new array. More...
 
Size getDimensionCount () const
 Return the number of dimensions that the new array has. More...
 
const Shared< Expression > & getDimension (Index dimensionIndex) const
 Return a pointer to an expression representing the size of the array along the specified dimension. More...
 
Bool addDimension (const Shared< Expression > &newSize)
 Add another dimension to the new array which has the specified size expression. More...
 
- Public Member Functions inherited from om::scripting::mir::lang::Expression
Type getExpressionType () const
 Return the type of this expression. More...
 
- Public Member Functions inherited from om::scripting::mir::lang::ASTNode
 ASTNode ()
 Create a new AST node with no node position specified. More...
 
 ASTNode (const Position &newPosition)
 Create a new AST node which corresponds to a token starting at the specified source code position. More...
 
virtual ~ASTNode ()
 Destroy this AST node object. More...
 
const PositiongetPosition () const
 Return an object representing the position of this AST node in the source code. More...
 
void setPosition (const Position &newPosition)
 Set the position of this AST node in the source code. More...
 

Static Public Member Functions

static Shared< NewArrayExpressionconstruct (const Shared< lang::Type > &newType)
 Construct a smart-pointer-wrapped instance of this class using the constructor with the given arguments. More...
 

Additional Inherited Members

- Public Types inherited from om::scripting::mir::lang::Expression
enum  Type {
  LITERAL, UNARY, BINARY, NEW_ARRAY,
  NEW_OBJECT, CAST, FUNCTION_CALL, ARRAY_ACCESS,
  ISA, REFERENCE, VARIABLE_DECLARATION, RANGE
}
 An enum that specifies the different kinds of visiblity for member declarations. More...
 
- Protected Member Functions inherited from om::scripting::mir::lang::Expression
 Expression (Type newType)
 Create a new expression with the specified expression type enum value. More...
 

Detailed Description

A class that represents an array-type allocation expression.

Constructor & Destructor Documentation

om::scripting::mir::lang::NewArrayExpression::NewArrayExpression ( const Shared< lang::Type > &  newType)
inline

Create a new array expression object with the specified base array type.

Member Function Documentation

const Shared<lang::Type>& om::scripting::mir::lang::NewArrayExpression::getType ( ) const
inline

Return a pointer to an object representing the base type of the new array.

Size om::scripting::mir::lang::NewArrayExpression::getDimensionCount ( ) const
inline

Return the number of dimensions that the new array has.

const Shared<Expression>& om::scripting::mir::lang::NewArrayExpression::getDimension ( Index  dimensionIndex) const
inline

Return a pointer to an expression representing the size of the array along the specified dimension.

Bool om::scripting::mir::lang::NewArrayExpression::addDimension ( const Shared< Expression > &  newSize)
inline

Add another dimension to the new array which has the specified size expression.

static Shared<NewArrayExpression> om::scripting::mir::lang::NewArrayExpression::construct ( const Shared< lang::Type > &  newType)
inlinestatic

Construct a smart-pointer-wrapped instance of this class using the constructor with the given arguments.


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