org.jmodelica.modelica.compiler.FRecordType Class Reference

A record type. More...

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

org.jmodelica.modelica.compiler.FType org.jmodelica.modelica.compiler.BaseNode

List of all members.

Public Member Functions

void flushCache ()
 low-level
void flushCollectionCache ()
 internal
FRecordType clone () throws CloneNotSupportedException
 internal
FRecordType copy ()
 internal
FRecordType fullCopy ()
 low-level
CValue assignToPartInFuncEval (CommonNamePart name, CValue left, CValue right)
 method ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2012
CValue assignToRecPartInFuncEval (CommonNamePart next, FType nextType, CValue left, CValue right)
 Handle one part of the left access of an assignment during function evaluation.
FType componentType (String name)
 Get the type of a specific component.
void flattenSize (FQName prefix, FFunctionVariable fv)
 method Flattening /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Flattening.jrag:283
void scalarizeRecordAssignment (List< FFunctionVariable > vars, List< FStatement > stmts, Map< String, FExp > indexMap, FQName left, FExp right)
 Scalarize an assignment to a record and put the resulting statements in the list of statements.
void scalarRecordFEquations (List< FAbstractEquation > eqns, FQName suffix, Map< String, FExp > indexMap, FExp left, FExp right)
 method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:927
void createRecordTemporaries (List vars, boolean equation, String name, boolean param)
 method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:1256
FExp createRecordConstructorCell (FQName name)
 method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:1298
void createTempCellFVariables (List vars, FQName name, boolean param)
 Creates temporary variables for a record with the given name.
void printDecl_C (Printer p, PrintStream str, String indent, String name, FExp src)
 method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:523
void printChildDecls_C (Printer p, PrintStream str, String indent, String name, FExp src)
 method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:538
void genTempInputCellAssigns_C (Printer p, PrintStream str, String indent, String name, FExp exp)
 method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1122
void genCellWriteBack_C (PrintStream str, String indent, String name, FExp exp, int index)
 method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1460
void genCellWriteBackAssignment_C (PrintStream str, String indent, String name, FExp exp)
 method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1502
 FRecordType ()
 method FlatModelica.ast:1
 FRecordType (Size p0, String p1, List< FRecordComponentType > p2)
 method FlatModelica.ast:8
 FRecordType (Size p0, beaver.Symbol p1, List< FRecordComponentType > p2)
 method FlatModelica.ast:13
boolean mayHaveRewrite ()
 internal method FlatModelica.ast:27
void setSize (Size value)
 Setter for lexeme Size high-level method FlatModelica.ast:5.
Size getSize ()
 Getter for lexeme Size high-level method FlatModelica.ast:12.
void setName (String value)
 Setter for lexeme Name high-level method FlatModelica.ast:5.
void setName (beaver.Symbol symbol)
 method FlatModelica.ast:11
String getName ()
 Getter for lexeme Name high-level method FlatModelica.ast:22.
void setComponentList (List< FRecordComponentType > list)
 Setter for ComponentList high-level method FlatModelica.ast:5.
int getNumComponent ()
FRecordComponentType getComponent (int i)
 Getter for child in list ComponentList high-level method FlatModelica.ast:19.
void addComponent (FRecordComponentType node)
 Add element to list ComponentList high-level method FlatModelica.ast:27.
void addComponentNoTransform (FRecordComponentType node)
 low-level method FlatModelica.ast:34
void setComponent (FRecordComponentType node, int i)
 Setter for child in list ComponentList high-level method FlatModelica.ast:42.
List< FRecordComponentTypegetComponents ()
 Getter for Component list.
List< FRecordComponentTypegetComponentsNoTransform ()
 low-level method FlatModelica.ast:56
List< FRecordComponentTypegetComponentList ()
 Getter for list ComponentList high-level method FlatModelica.ast:63.
List< FRecordComponentTypegetComponentListNoTransform ()
 low-level method FlatModelica.ast:72
FRecordDecl myFRecordDecl ()
 syn FlatRecordBinding /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatNameBinding.jrag:272
boolean typeCompatible (FType type, boolean allowUnknown)
 syn FTypeCompatibility /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:700
boolean typeMatches (FType type, boolean compatible, boolean allowUnknown)
 syn FTypeCompatibility /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:707
boolean equivalentTo (FType type, boolean allowUnknown)
 syn FTypeEquivalent /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:761
boolean isRecord ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:812
String name ()
 syn FlatNames /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Util.jrag:1272
String signatureString ()
 Returns a string (tersely) describing this type.
String name_C ()
 syn CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:366
String nameArray_C ()
 syn CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:367
String scalarType_C ()
 syn CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:445
String arrayType_C ()
 syn CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:448
FRecordDecl lookupFRec (String name)
 inh FlatRecordBinding /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatNameBinding.jrag:275
ASTNode rewriteTo ()
 internal

Public Attributes

int Namestart
 method FlatModelica.ast:9
int Nameend
 method FlatModelica.ast:10

Protected Member Functions

boolean recursiveTypeCheck (TypeChecker ch)
 method BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:857
int numChildren ()
 low-level method FlatModelica.ast:21

Protected Attributes

String tokenString_Name
 * internal * method FlatModelica.ast:8


Detailed Description

A record type.

In the instance tree, the components are stored alphabetically, but in the flat tree they are in the order declared. node FlatModelica.ast:262


Constructor & Destructor Documentation

org.jmodelica.modelica.compiler.FRecordType.FRecordType (  ) 

method FlatModelica.ast:1

org.jmodelica.modelica.compiler.FRecordType.FRecordType ( Size  p0,
String  p1,
List< FRecordComponentType p2 
)

method FlatModelica.ast:8

org.jmodelica.modelica.compiler.FRecordType.FRecordType ( Size  p0,
beaver.Symbol  p1,
List< FRecordComponentType p2 
)

method FlatModelica.ast:13


Member Function Documentation

void org.jmodelica.modelica.compiler.FRecordType.addComponent ( FRecordComponentType  node  ) 

Add element to list ComponentList high-level method FlatModelica.ast:27.

void org.jmodelica.modelica.compiler.FRecordType.addComponentNoTransform ( FRecordComponentType  node  ) 

low-level method FlatModelica.ast:34

String org.jmodelica.modelica.compiler.FRecordType.arrayType_C (  ) 

syn CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:448

Reimplemented from org.jmodelica.modelica.compiler.FType.

CValue org.jmodelica.modelica.compiler.FRecordType.assignToPartInFuncEval ( CommonNamePart  name,
CValue  left,
CValue  right 
)

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

Reimplemented from org.jmodelica.modelica.compiler.FType.

CValue org.jmodelica.modelica.compiler.FRecordType.assignToRecPartInFuncEval ( CommonNamePart  next,
FType  nextType,
CValue  left,
CValue  right 
)

Handle one part of the left access of an assignment during function evaluation.

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

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

internal

Reimplemented from org.jmodelica.modelica.compiler.FType.

FType org.jmodelica.modelica.compiler.FRecordType.componentType ( String  name  ) 

Get the type of a specific component.

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

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

internal

FExp org.jmodelica.modelica.compiler.FRecordType.createRecordConstructorCell ( FQName  name  ) 

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

Reimplemented from org.jmodelica.modelica.compiler.FType.

void org.jmodelica.modelica.compiler.FRecordType.createRecordTemporaries ( List  vars,
boolean  equation,
String  name,
boolean  param 
)

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

Reimplemented from org.jmodelica.modelica.compiler.FType.

void org.jmodelica.modelica.compiler.FRecordType.createTempCellFVariables ( List  vars,
FQName  name,
boolean  param 
)

Creates temporary variables for a record with the given name.

Parameters:
vars list of variable to add the new variables to
name the name of the record variable method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:1376

Reimplemented from org.jmodelica.modelica.compiler.FType.

boolean org.jmodelica.modelica.compiler.FRecordType.equivalentTo ( FType  type,
boolean  allowUnknown 
)

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

Reimplemented from org.jmodelica.modelica.compiler.FType.

void org.jmodelica.modelica.compiler.FRecordType.flattenSize ( FQName  prefix,
FFunctionVariable  fv 
)

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

Reimplemented from org.jmodelica.modelica.compiler.FType.

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

low-level

Reimplemented from org.jmodelica.modelica.compiler.FType.

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

internal

Reimplemented from org.jmodelica.modelica.compiler.FType.

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

low-level

void org.jmodelica.modelica.compiler.FRecordType.genCellWriteBack_C ( PrintStream  str,
String  indent,
String  name,
FExp  exp,
int  index 
)

method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1460

Reimplemented from org.jmodelica.modelica.compiler.FType.

void org.jmodelica.modelica.compiler.FRecordType.genCellWriteBackAssignment_C ( PrintStream  str,
String  indent,
String  name,
FExp  exp 
)

method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1502

Reimplemented from org.jmodelica.modelica.compiler.FType.

void org.jmodelica.modelica.compiler.FRecordType.genTempInputCellAssigns_C ( Printer  p,
PrintStream  str,
String  indent,
String  name,
FExp  exp 
)

method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1122

Reimplemented from org.jmodelica.modelica.compiler.FType.

FRecordComponentType org.jmodelica.modelica.compiler.FRecordType.getComponent ( int  i  ) 

Getter for child in list ComponentList high-level method FlatModelica.ast:19.

List<FRecordComponentType> org.jmodelica.modelica.compiler.FRecordType.getComponentList (  ) 

Getter for list ComponentList high-level method FlatModelica.ast:63.

List<FRecordComponentType> org.jmodelica.modelica.compiler.FRecordType.getComponentListNoTransform (  ) 

low-level method FlatModelica.ast:72

List<FRecordComponentType> org.jmodelica.modelica.compiler.FRecordType.getComponents (  ) 

Getter for Component list.

high-level method FlatModelica.ast:50

List<FRecordComponentType> org.jmodelica.modelica.compiler.FRecordType.getComponentsNoTransform (  ) 

low-level method FlatModelica.ast:56

String org.jmodelica.modelica.compiler.FRecordType.getName (  ) 

Getter for lexeme Name high-level method FlatModelica.ast:22.

int org.jmodelica.modelica.compiler.FRecordType.getNumComponent (  ) 

Returns:
number of children in ComponentList high-level method FlatModelica.ast:12

Size org.jmodelica.modelica.compiler.FRecordType.getSize (  ) 

Getter for lexeme Size high-level method FlatModelica.ast:12.

Reimplemented from org.jmodelica.modelica.compiler.FType.

boolean org.jmodelica.modelica.compiler.FRecordType.isRecord (  ) 

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

Reimplemented from org.jmodelica.modelica.compiler.FType.

FRecordDecl org.jmodelica.modelica.compiler.FRecordType.lookupFRec ( String  name  ) 

inh FlatRecordBinding /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatNameBinding.jrag:275

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

internal method FlatModelica.ast:27

Reimplemented from org.jmodelica.modelica.compiler.FType.

FRecordDecl org.jmodelica.modelica.compiler.FRecordType.myFRecordDecl (  ) 

syn FlatRecordBinding /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatNameBinding.jrag:272

Reimplemented from org.jmodelica.modelica.compiler.FType.

String org.jmodelica.modelica.compiler.FRecordType.name (  )  [virtual]

syn FlatNames /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Util.jrag:1272

Implements org.jmodelica.modelica.compiler.FType.

String org.jmodelica.modelica.compiler.FRecordType.name_C (  ) 

syn CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:366

String org.jmodelica.modelica.compiler.FRecordType.nameArray_C (  ) 

syn CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:367

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

low-level method FlatModelica.ast:21

Reimplemented from org.jmodelica.modelica.compiler.FType.

void org.jmodelica.modelica.compiler.FRecordType.printChildDecls_C ( Printer  p,
PrintStream  str,
String  indent,
String  name,
FExp  src 
)

method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:538

void org.jmodelica.modelica.compiler.FRecordType.printDecl_C ( Printer  p,
PrintStream  str,
String  indent,
String  name,
FExp  src 
)

method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:523

Reimplemented from org.jmodelica.modelica.compiler.FType.

boolean org.jmodelica.modelica.compiler.FRecordType.recursiveTypeCheck ( TypeChecker  ch  )  [protected]

method BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:857

Reimplemented from org.jmodelica.modelica.compiler.FType.

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

internal

Reimplemented from org.jmodelica.modelica.compiler.FType.

void org.jmodelica.modelica.compiler.FRecordType.scalarizeRecordAssignment ( List< FFunctionVariable vars,
List< FStatement stmts,
Map< String, FExp indexMap,
FQName  left,
FExp  right 
)

Scalarize an assignment to a record and put the resulting statements in the list of statements.

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

Reimplemented from org.jmodelica.modelica.compiler.FType.

void org.jmodelica.modelica.compiler.FRecordType.scalarRecordFEquations ( List< FAbstractEquation eqns,
FQName  suffix,
Map< String, FExp indexMap,
FExp  left,
FExp  right 
)

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

Reimplemented from org.jmodelica.modelica.compiler.FType.

String org.jmodelica.modelica.compiler.FRecordType.scalarType_C (  ) 

syn CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:445

Reimplemented from org.jmodelica.modelica.compiler.FType.

void org.jmodelica.modelica.compiler.FRecordType.setComponent ( FRecordComponentType  node,
int  i 
)

Setter for child in list ComponentList high-level method FlatModelica.ast:42.

void org.jmodelica.modelica.compiler.FRecordType.setComponentList ( List< FRecordComponentType list  ) 

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

void org.jmodelica.modelica.compiler.FRecordType.setName ( beaver.Symbol  symbol  ) 

method FlatModelica.ast:11

void org.jmodelica.modelica.compiler.FRecordType.setName ( String  value  ) 

Setter for lexeme Name high-level method FlatModelica.ast:5.

void org.jmodelica.modelica.compiler.FRecordType.setSize ( Size  value  ) 

Setter for lexeme Size high-level method FlatModelica.ast:5.

Reimplemented from org.jmodelica.modelica.compiler.FType.

String org.jmodelica.modelica.compiler.FRecordType.signatureString (  ) 

Returns a string (tersely) describing this type.

See also:
FFunctionDecl.signatureString() syn FlatFunctionUtils /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Util.jrag:1485

Reimplemented from org.jmodelica.modelica.compiler.FType.

boolean org.jmodelica.modelica.compiler.FRecordType.typeCompatible ( FType  type,
boolean  allowUnknown 
)

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

Reimplemented from org.jmodelica.modelica.compiler.FType.

boolean org.jmodelica.modelica.compiler.FRecordType.typeMatches ( FType  type,
boolean  compatible,
boolean  allowUnknown 
)

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

Reimplemented from org.jmodelica.modelica.compiler.FType.


Member Data Documentation

method FlatModelica.ast:10

method FlatModelica.ast:9

* internal * method FlatModelica.ast:8

* internal


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

Generated on Fri Oct 7 14:50:18 2011 for JModelica.org by  doxygen 1.5.8