org.jmodelica.modelica.compiler.FExpSubscript Class Reference

Expression subscript. More...

Inheritance diagram for org.jmodelica.modelica.compiler.FExpSubscript:

org.jmodelica.modelica.compiler.FSubscript org.jmodelica.modelica.compiler.BaseNode

List of all members.

Public Member Functions

void flushCache ()
 low-level
void flushCollectionCache ()
 internal
FExpSubscript clone () throws CloneNotSupportedException
 internal
FExpSubscript copy ()
 internal
FExpSubscript fullCopy ()
 low-level
void addDeclarationSize (MutableSize s)
 method Arrays /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:506
FSubscript createSpecified (Index i, int[] dim)
 method Arrays /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:1511
FExpSubscript resolveSubscripts ()
 Create a copy with all array subscripts replaced by literals.
 FExpSubscript (int i)
 Create a new FExpSubscript with an integer literal as expression.
void typeCheckAsSize ()
 method FlatTypeCheck /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeCheck.jrag:217
void typeCheckAsIndex ()
 method FlatTypeCheck /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeCheck.jrag:236
void typeCheck ()
 method FlatTypeCheck /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeCheck.jrag:266
FSubscript flatten (FQName name)
 method FlatExpressions /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Flattening.jrag:1012
FSubscript flattenAndResolveIndices (FQName prefix)
 method FlatExpressions /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Flattening.jrag:1178
void prettyPrint (Printer p, PrintStream str, String indent)
 method FlattPrettyPrint /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/PrettyPrint.jrag:942
void makeSubscriptsLiteral ()
 method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:100
FSubscript scalarize (Map< String, FExp > indexMap)
 method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:1478
void prefixInternalUses (FQName prefix, FRecordDecl decl)
 method TransformCanonical /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/TransformCanonical.jrag:2602
void prettyPrint_XML (Printer p, PrintStream str, String indent)
 method XMLCodeGen /tmp/JModelica/Compiler/ModelicaXMLBackEnd/src/jastadd/XMLCodeGen.jrag:494
 FExpSubscript ()
 method FlatModelica.ast:1
 FExpSubscript (FExp p0)
 method FlatModelica.ast:7
boolean mayHaveRewrite ()
 internal method FlatModelica.ast:20
void setFExp (FExp node)
 Setter for FExp high-level method FlatModelica.ast:5.
FExp getFExp ()
 Getter for FExp high-level method FlatModelica.ast:12.
FExp getFExpNoTransform ()
 low-level method FlatModelica.ast:18
void setExpanded (Array node)
 Setter for Expanded high-level method FlatModelica.ast:5.
Array getExpandedNoTransform ()
 low-level method FlatModelica.ast:11
int ndims ()
 Get array dimensions.
Size size ()
 Get the array sizes.
Array getExpanded ()
 Expand index for all values of each for index used in expression.
Indices indices ()
 Get the set of all array indices of an array access.
int[] myIndices ()
 Get the set of all indices this array subscript spans.
CValue ceval ()
 syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:1350
int[] arrayIndices ()
 Returns the set of array indices spanned by a component declared with this subscript.
int numIndices ()
 Get the number of array indices spanned by a component declared with this subscript.
boolean isCircular ()
 syn CircularExpressions /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2509
FType type ()
 syn FlatTypeAnalysis /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:483
boolean isConstant ()
 syn FlatVariability /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatVariability.jrag:243
FTypePrefixVariability variability ()
 syn FlatVariability /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatVariability.jrag:318
FSubscript specify (int index)
 syn Flattening /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Flattening.jrag:679
String xmlTag ()
 syn XMLTagBinding /tmp/JModelica/Compiler/ModelicaXMLBackEnd/src/jastadd/XMLCodeGen.jrag:592
FExpSubscript surroundingFExpSubscript ()
 inh Arrays /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:1067
boolean isInstComponentSize ()
 inh FlatTypeCheck /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeCheck.jrag:286
Size Define_Size_mySize (ASTNode caller, ASTNode child)
 /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:564 internal
FExpSubscript Define_FExpSubscript_surroundingFExpSubscript (ASTNode caller, ASTNode child)
 /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:1068 internal
FType Define_FType_type (ASTNode caller, ASTNode child)
 /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:1805 internal
ASTNode rewriteTo ()
 internal
HashSet< CommonForIndexcollectForIndices ()
 Collect all ForIndexs used in the expression of this FExpSubscript.
java.util.Set FExpSubscript_collectForIndices_contributors ()

Protected Member Functions

int numChildren ()
 low-level method FlatModelica.ast:14
int getExpandedChildPosition ()
 low-level method FlatModelica.ast:17
void collect_contributors_FExpSubscript_collectForIndices ()

Protected Attributes

boolean getExpanded_computed = false
 internal
Array getExpanded_value
 internal
boolean type_computed = false
 internal
FType type_value
 internal
boolean FExpSubscript_collectForIndices_computed = false
 internal
HashSet< CommonForIndexFExpSubscript_collectForIndices_value
 internal

Package Attributes

java.util.Set FExpSubscript_collectForIndices_contributors


Detailed Description

Expression subscript.

node FlatModelica.ast:392


Constructor & Destructor Documentation

org.jmodelica.modelica.compiler.FExpSubscript.FExpSubscript ( int  i  ) 

Create a new FExpSubscript with an integer literal as expression.

method Constructors /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Constructors.jrag:405

org.jmodelica.modelica.compiler.FExpSubscript.FExpSubscript (  ) 

method FlatModelica.ast:1

org.jmodelica.modelica.compiler.FExpSubscript.FExpSubscript ( FExp  p0  ) 

method FlatModelica.ast:7


Member Function Documentation

void org.jmodelica.modelica.compiler.FExpSubscript.addDeclarationSize ( MutableSize  s  )  [virtual]

method Arrays /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:506

Implements org.jmodelica.modelica.compiler.FSubscript.

int [] org.jmodelica.modelica.compiler.FExpSubscript.arrayIndices (  ) 

Returns the set of array indices spanned by a component declared with this subscript.

syn ArrayConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2426

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

CValue org.jmodelica.modelica.compiler.FExpSubscript.ceval (  ) 

syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:1350

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

FExpSubscript org.jmodelica.modelica.compiler.FExpSubscript.clone (  )  throws CloneNotSupportedException

internal

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

void org.jmodelica.modelica.compiler.FExpSubscript.collect_contributors_FExpSubscript_collectForIndices (  )  [protected]

HashSet<CommonForIndex> org.jmodelica.modelica.compiler.FExpSubscript.collectForIndices (  ) 

Collect all ForIndexs used in the expression of this FExpSubscript.

coll Arrays /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:1041

FExpSubscript org.jmodelica.modelica.compiler.FExpSubscript.copy (  ) 

internal

FSubscript org.jmodelica.modelica.compiler.FExpSubscript.createSpecified ( Index  i,
int[]  dim 
)

method Arrays /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:1511

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

FExpSubscript org.jmodelica.modelica.compiler.FExpSubscript.Define_FExpSubscript_surroundingFExpSubscript ( ASTNode  caller,
ASTNode  child 
)

/tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:1068 internal

FType org.jmodelica.modelica.compiler.FExpSubscript.Define_FType_type ( ASTNode  caller,
ASTNode  child 
)

/tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:1805 internal

Size org.jmodelica.modelica.compiler.FExpSubscript.Define_Size_mySize ( ASTNode  caller,
ASTNode  child 
)

/tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:564 internal

FSubscript org.jmodelica.modelica.compiler.FExpSubscript.flatten ( FQName  name  )  [virtual]

method FlatExpressions /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Flattening.jrag:1012

Implements org.jmodelica.modelica.compiler.FSubscript.

FSubscript org.jmodelica.modelica.compiler.FExpSubscript.flattenAndResolveIndices ( FQName  prefix  ) 

method FlatExpressions /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Flattening.jrag:1178

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

void org.jmodelica.modelica.compiler.FExpSubscript.flushCache (  ) 

low-level

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

void org.jmodelica.modelica.compiler.FExpSubscript.flushCollectionCache (  ) 

internal

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

FExpSubscript org.jmodelica.modelica.compiler.FExpSubscript.fullCopy (  ) 

low-level

Array org.jmodelica.modelica.compiler.FExpSubscript.getExpanded (  ) 

Expand index for all values of each for index used in expression.

syn nta Arrays /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:1036

int org.jmodelica.modelica.compiler.FExpSubscript.getExpandedChildPosition (  )  [protected]

low-level method FlatModelica.ast:17

Array org.jmodelica.modelica.compiler.FExpSubscript.getExpandedNoTransform (  ) 

low-level method FlatModelica.ast:11

FExp org.jmodelica.modelica.compiler.FExpSubscript.getFExp (  ) 

Getter for FExp high-level method FlatModelica.ast:12.

FExp org.jmodelica.modelica.compiler.FExpSubscript.getFExpNoTransform (  ) 

low-level method FlatModelica.ast:18

Indices org.jmodelica.modelica.compiler.FExpSubscript.indices (  ) 

Get the set of all array indices of an array access.

Returns:
An Indices object containing all indices in each array dimension. syn Arrays /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:1643

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

boolean org.jmodelica.modelica.compiler.FExpSubscript.isCircular (  ) 

syn CircularExpressions /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2509

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

boolean org.jmodelica.modelica.compiler.FExpSubscript.isConstant (  ) 

syn FlatVariability /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatVariability.jrag:243

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

boolean org.jmodelica.modelica.compiler.FExpSubscript.isInstComponentSize (  ) 

inh FlatTypeCheck /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeCheck.jrag:286

void org.jmodelica.modelica.compiler.FExpSubscript.makeSubscriptsLiteral (  ) 

method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:100

boolean org.jmodelica.modelica.compiler.FExpSubscript.mayHaveRewrite (  ) 

internal method FlatModelica.ast:20

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

int [] org.jmodelica.modelica.compiler.FExpSubscript.myIndices (  )  [virtual]

Get the set of all indices this array subscript spans.

Returns:
an int array containing the indices spanned syn Arrays /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:1728

Implements org.jmodelica.modelica.compiler.FSubscript.

int org.jmodelica.modelica.compiler.FExpSubscript.ndims (  )  [virtual]

Get array dimensions.

A value > 0 indicates an array, 0 indicates a scalar and -1 indicates an error in computation of the array dimensions.

Returns:
Array dimension. syn Arrays /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:170

Implements org.jmodelica.modelica.compiler.FSubscript.

int org.jmodelica.modelica.compiler.FExpSubscript.numChildren (  )  [protected]

low-level method FlatModelica.ast:14

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

int org.jmodelica.modelica.compiler.FExpSubscript.numIndices (  ) 

Get the number of array indices spanned by a component declared with this subscript.

syn ArrayConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2441

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

void org.jmodelica.modelica.compiler.FExpSubscript.prefixInternalUses ( FQName  prefix,
FRecordDecl  decl 
)

method TransformCanonical /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/TransformCanonical.jrag:2602

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

void org.jmodelica.modelica.compiler.FExpSubscript.prettyPrint ( Printer  p,
PrintStream  str,
String  indent 
)

method FlattPrettyPrint /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/PrettyPrint.jrag:942

void org.jmodelica.modelica.compiler.FExpSubscript.prettyPrint_XML ( Printer  p,
PrintStream  str,
String  indent 
)

method XMLCodeGen /tmp/JModelica/Compiler/ModelicaXMLBackEnd/src/jastadd/XMLCodeGen.jrag:494

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

FExpSubscript org.jmodelica.modelica.compiler.FExpSubscript.resolveSubscripts (  ) 

Create a copy with all array subscripts replaced by literals.

method ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:1260

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

ASTNode org.jmodelica.modelica.compiler.FExpSubscript.rewriteTo (  ) 

internal

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

FSubscript org.jmodelica.modelica.compiler.FExpSubscript.scalarize ( Map< String, FExp indexMap  ) 

method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:1478

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

void org.jmodelica.modelica.compiler.FExpSubscript.setExpanded ( Array  node  ) 

Setter for Expanded high-level method FlatModelica.ast:5.

void org.jmodelica.modelica.compiler.FExpSubscript.setFExp ( FExp  node  ) 

Setter for FExp high-level method FlatModelica.ast:5.

Size org.jmodelica.modelica.compiler.FExpSubscript.size (  )  [virtual]

Get the array sizes.

syn Arrays /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:549

Implements org.jmodelica.modelica.compiler.FSubscript.

FSubscript org.jmodelica.modelica.compiler.FExpSubscript.specify ( int  index  )  [virtual]

syn Flattening /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Flattening.jrag:679

Implements org.jmodelica.modelica.compiler.FSubscript.

FExpSubscript org.jmodelica.modelica.compiler.FExpSubscript.surroundingFExpSubscript (  ) 

inh Arrays /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Arrays.jrag:1067

FType org.jmodelica.modelica.compiler.FExpSubscript.type (  )  [virtual]

syn FlatTypeAnalysis /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:483

Implements org.jmodelica.modelica.compiler.FSubscript.

void org.jmodelica.modelica.compiler.FExpSubscript.typeCheck (  ) 

method FlatTypeCheck /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeCheck.jrag:266

void org.jmodelica.modelica.compiler.FExpSubscript.typeCheckAsIndex (  ) 

method FlatTypeCheck /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeCheck.jrag:236

void org.jmodelica.modelica.compiler.FExpSubscript.typeCheckAsSize (  ) 

method FlatTypeCheck /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeCheck.jrag:217

FTypePrefixVariability org.jmodelica.modelica.compiler.FExpSubscript.variability (  ) 

syn FlatVariability /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatVariability.jrag:318

Reimplemented from org.jmodelica.modelica.compiler.FSubscript.

String org.jmodelica.modelica.compiler.FExpSubscript.xmlTag (  ) 

syn XMLTagBinding /tmp/JModelica/Compiler/ModelicaXMLBackEnd/src/jastadd/XMLCodeGen.jrag:592


Member Data Documentation

internal

internal

internal

internal

internal

internal


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

Generated on Fri Oct 7 14:49:58 2011 for JModelica.org by  doxygen 1.5.8