org.jmodelica.modelica.compiler.FType Class Reference

Base class for all type nodes. More...

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

org.jmodelica.modelica.compiler.BaseNode org.jmodelica.modelica.compiler.FPrimitiveType org.jmodelica.modelica.compiler.FRecordType org.jmodelica.modelica.compiler.FUnknownType org.jmodelica.modelica.compiler.FBooleanType org.jmodelica.modelica.compiler.FEnumLiteralType org.jmodelica.modelica.compiler.FEnumType org.jmodelica.modelica.compiler.FPrimitiveNumericType org.jmodelica.modelica.compiler.FStringType org.jmodelica.modelica.compiler.FIntegerType org.jmodelica.modelica.compiler.FRealType

List of all members.

Classes

interface  TypeChecker
 method BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:844

Public Member Functions

void flushCache ()
 low-level
void flushCollectionCache ()
 internal
FType clone () throws CloneNotSupportedException
 internal
FExp wrapRangeSizeExp (FExp exp)
 Wrap the given expression so it is suitable for use in an expression calculating the array size of a range expression.
CValue assignToPartInFuncEval (CommonNamePart name, CValue left, CValue right)
 Handle one part of the left access of an assignment during function evaluation.
CValue assignToLastInFuncEval (CommonNamePart name, CValue left, CValue right)
 Handle the last part of the left access of an assignment during function evaluation.
FExp zeroLiteral ()
 Create a literal with the zero value for this type, if applicable.
FExp createLiteral (int v)
 Create a literal of the given integer value for this type, if applicable.
void flattenSize (FQName prefix, FFunctionVariable fv)
 method Flattening /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Flattening.jrag:279
void updateFUnknownSizeExps (AbstractFVariable var)
 Change the variable of any FUnknownSizeExp in size to the given variable.
void scalarizeRecordArrayAssignment (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 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)
 Generate scalar FEquations for this record or record component.
void scalarRecordComponentFEquations (List< FAbstractEquation > eqns, FQName suffix, Map< String, FExp > indexMap, FExp left, FExp right)
 Generate scalar FEquations for this record component.
void createRecordTemporaries (List vars, boolean equation, String name, boolean param)
 Creates temporary variables for a record with the given name.
FExp createRecordConstructor (FQName name)
 Create a record constructor (or FArray of record constructors), with the arguments taken from a record variable with the given name.
FExp createRecordConstructorCell (FQName name)
 Create a record constructor with the arguments taken from a record variable with the given name.
void createTempFVariables (List vars, FQName name, boolean param)
 Creates a new temporary varable with the given name.
void createTempCellFVariables (List vars, FQName name, boolean param)
 Creates a new temporary variable with the given name.
FVariable createFVariable (FVisibilityType fvt, FQName name, boolean param)
 Creates a new variable with the given visibility and name.
void genTempInputAssigns_var_CAD (Printer p, PrintStream str, String indent, String name, FExp exp)
 method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1053
void genTempInputCellAssigns_var_CAD (Printer p, PrintStream str, String indent, String name, FExp exp)
 method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1068
void genTempInputAssigns_der_CAD (Printer p, PrintStream str, String indent, String name, FExp exp)
 method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1074
void genTempInputCellAssigns_der_CAD (Printer p, PrintStream str, String indent, String name, FExp exp)
 method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1089
void genWriteBack_var_CAD (PrintStream str, String indent, String name, FExp exp, int index)
 method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1230
void genWriteBack_der_CAD (PrintStream str, String indent, String name, FExp exp, int index)
 method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1244
void genCellWriteBack_var_CAD (PrintStream str, String indent, String name, FExp exp, int index)
 method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1258
void genCellWriteBack_der_CAD (PrintStream str, String indent, String name, FExp exp, int index)
 method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1262
void printDecl_C (Printer p, PrintStream str, String indent, String name, FExp src)
 method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:512
void genTempInputAssigns_C (Printer p, PrintStream str, String indent, String name, FExp exp)
 method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1100
void genTempInputCellAssigns_C (Printer p, PrintStream str, String indent, String name, FExp exp)
 method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1115
void genWriteBack_C (PrintStream str, String indent, String name, FExp exp, int index)
 method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1442
void genCellWriteBack_C (PrintStream str, String indent, String name, FExp exp, int index)
 method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1456
void genWriteBackAssignment_C (PrintStream str, String indent, String name, FExp exp)
 method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1484
void genCellWriteBackAssignment_C (PrintStream str, String indent, String name, FExp exp)
 method CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1498
 FType ()
 method FlatModelica.ast:1
 FType (Size p0)
 method FlatModelica.ast:7
boolean mayHaveRewrite ()
 internal method FlatModelica.ast:19
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:13.
abstract String name ()
 syn FlatNames /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Util.jrag:1265
Indices indices ()
 Get the set of all array indices of an array access.
CValue add (CValue v1, CValue v2)
 Addition of constant values.
CValue sub (CValue v1, CValue v2)
 Subtraction of constant values.
CValue mul (CValue v1, CValue v2)
 Multiplication of constant values.
CValue div (CValue v1, CValue v2)
 Division of constant values.
CValue pow (CValue v1, CValue v2)
 Power expression for constant values.
CValue neg (CValue v)
 Negation of a constant value.
CValue abs (CValue v)
 Abs expression for constant values.
CValue and (CValue v1, CValue v2)
 And expression for constant values.
CValue or (CValue v1, CValue v2)
 Or expression for constant values.
CValue not (CValue v)
 Not expression for constant values.
CValue equ (CValue v1, CValue v2)
 Equals comparison for constant values.
CValue neq (CValue v1, CValue v2)
 Not equal comparison for constant values.
CValue geq (CValue v1, CValue v2)
 Greater or equal than comparison for constant values.
CValue gt (CValue v1, CValue v2)
 Greater than comparison for constant values.
CValue leq (CValue v1, CValue v2)
 Less or equal than comparison for constant values.
CValue lt (CValue v1, CValue v2)
 Less than comparison for constant values.
boolean isComposite ()
 syn FlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatAPI.jrag:1203
FRecordDecl myFRecordDecl ()
 syn FlatRecordBinding /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatNameBinding.jrag:271
FEnumDecl myFEnumDecl ()
 syn FlatEnumBinding /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatNameBinding.jrag:324
boolean canBeRange ()
 syn FlatTypeAnalysis /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:285
FType enclosingArrayType (int size)
 Add an enclosing dimension to type.
FType typePromotion (FType type)
 Combine two types to the broadest common denominator.
FType looseTypePromotion (FType type)
 Combine two types to the broadest common denominator.
FType numericPromotion (FType type)
 Combine two types to the broadest common numeric denominator.
FType looseNumericPromotion (FType type)
 Combine two types to the broadest common numeric denominator.
FType scalarNumericPromotion (FType type)
 Combine two types to the broadest common scalar numeric denominator.
FType typePromotion (FType type, boolean allowUnknown)
 Combine two types to the broadest common denominator.
FType looseTypePromotion (FType type, boolean allowUnknown)
 Combine two types to the broadest common denominator.
FType numericPromotion (FType type, boolean allowUnknown)
 Combine two types to the broadest common numeric denominator.
FType looseNumericPromotion (FType type, boolean allowUnknown)
 Combine two types to the broadest common numeric denominator.
boolean typeCompatible (FType type)
 syn FTypeCompatibility /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:689
boolean typeCompatible (FType type, boolean allowUnknown)
 syn FTypeCompatibility /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:691
boolean typeMatches (FType type, boolean compatible, boolean allowUnknown)
 syn FTypeCompatibility /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:705
boolean dimensionCompatible (FType type)
 syn FTypeCompatibility /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:740
boolean dimensionCompatible (FType type, boolean allowUnknown)
 syn FTypeCompatibility /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:741
boolean equivalentTo (FType type)
boolean equivalentTo (FType type, boolean allowUnknown)
 syn FTypeEquivalent /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:754
boolean isReal ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:803
boolean isInteger ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:805
boolean isBoolean ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:807
boolean isString ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:809
boolean isRecord ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:811
boolean isEnum ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:813
boolean isArray ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:816
boolean isScalar ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:817
boolean isNumeric ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:819
boolean isPrimitive ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:822
boolean isRealScalar ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:825
boolean isRealArray ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:826
boolean isIntegerScalar ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:827
boolean isIntegerArray ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:828
boolean isBooleanScalar ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:829
boolean isBooleanArray ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:830
boolean isStringScalar ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:831
boolean isStringArray ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:832
boolean isRecordScalar ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:833
boolean isRecordArray ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:834
boolean isEnumScalar ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:835
boolean isEnumArray ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:836
boolean isNumericScalar ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:837
boolean isNumericArray ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:838
boolean isPrimitiveScalar ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:839
boolean isPrimitiveArray ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:840
boolean onlyContainsReal ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:864
boolean hasAdd ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:866
boolean canBeIndex ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:870
int ndims ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:875
Size size ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:877
FType sizedType (Size s)
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:879
FType scalarType ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:882
boolean isUnknown ()
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:895
FType arrayType (Size size)
 syn BuiltInFlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:919
String toString ()
 syn PrettyPrint /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/PrettyPrint.jrag:692
String signatureString ()
 Returns a string (tersely) describing this type.
String getXMLType ()
 syn XMLValueMethods /tmp/JModelica/Compiler/ModelicaXMLBackEnd/src/jastadd/codegen/XMLValueGenerator.jrag:118
String type_C ()
 syn CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:438
String argType_C ()
 syn CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:440
String scalarType_C ()
 syn CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:444
String arrayType_C ()
 syn CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:447
String exportWrapperType_C ()
 syn ExportFunctions /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/ExportFunctions.jadd:56
int nextTempNbr_C ()
 inh CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1087
ASTNode rewriteTo ()
 internal

Protected Member Functions

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

Protected Attributes

Size tokenSize_Size
 * internal * method FlatModelica.ast:8
boolean indices_computed = false
 internal
Indices indices_value
 internal
boolean myFRecordDecl_computed = false
 internal
FRecordDecl myFRecordDecl_value
 internal
boolean myFEnumDecl_computed = false
 internal
FEnumDecl myFEnumDecl_value
 internal


Detailed Description

Base class for all type nodes.

node FlatModelica.ast:254


Constructor & Destructor Documentation

org.jmodelica.modelica.compiler.FType.FType (  ) 

method FlatModelica.ast:1

org.jmodelica.modelica.compiler.FType.FType ( Size  p0  ) 

method FlatModelica.ast:7


Member Function Documentation

CValue org.jmodelica.modelica.compiler.FType.abs ( CValue  v  ) 

Abs expression for constant values.

Parameters:
v Constant value of operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2280

Reimplemented in org.jmodelica.modelica.compiler.FIntegerType, and org.jmodelica.modelica.compiler.FRealType.

CValue org.jmodelica.modelica.compiler.FType.add ( CValue  v1,
CValue  v2 
)

Addition of constant values.

Parameters:
v1 Constant value of left operand.
v2 Constant value of right operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2202

Reimplemented in org.jmodelica.modelica.compiler.FIntegerType, and org.jmodelica.modelica.compiler.FRealType.

CValue org.jmodelica.modelica.compiler.FType.and ( CValue  v1,
CValue  v2 
)

And expression for constant values.

Parameters:
v1 Constant value of left operand.
v2 Constant value of right operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2294

Reimplemented in org.jmodelica.modelica.compiler.FBooleanType.

String org.jmodelica.modelica.compiler.FType.argType_C (  ) 

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

Reimplemented in org.jmodelica.modelica.compiler.FIntegerType, and org.jmodelica.modelica.compiler.FPrimitiveType.

FType org.jmodelica.modelica.compiler.FType.arrayType ( Size  size  ) 

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

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

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

CValue org.jmodelica.modelica.compiler.FType.assignToLastInFuncEval ( CommonNamePart  name,
CValue  left,
CValue  right 
)

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

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

CValue org.jmodelica.modelica.compiler.FType.assignToPartInFuncEval ( CommonNamePart  name,
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:2008

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

boolean org.jmodelica.modelica.compiler.FType.canBeIndex (  ) 

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

Reimplemented in org.jmodelica.modelica.compiler.FBooleanType, org.jmodelica.modelica.compiler.FEnumType, and org.jmodelica.modelica.compiler.FIntegerType.

boolean org.jmodelica.modelica.compiler.FType.canBeRange (  ) 

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

Reimplemented in org.jmodelica.modelica.compiler.FBooleanType, org.jmodelica.modelica.compiler.FEnumType, org.jmodelica.modelica.compiler.FIntegerType, and org.jmodelica.modelica.compiler.FRealType.

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

FVariable org.jmodelica.modelica.compiler.FType.createFVariable ( FVisibilityType  fvt,
FQName  name,
boolean  param 
)

Creates a new variable with the given visibility and name.

All optional children in the new variable are empty.

Default implementation returns null. method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:1346

Reimplemented in org.jmodelica.modelica.compiler.FBooleanType, org.jmodelica.modelica.compiler.FIntegerType, org.jmodelica.modelica.compiler.FRealType, and org.jmodelica.modelica.compiler.FStringType.

FExp org.jmodelica.modelica.compiler.FType.createLiteral ( int  v  ) 

Create a literal of the given integer value for this type, if applicable.

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

Reimplemented in org.jmodelica.modelica.compiler.FBooleanType, org.jmodelica.modelica.compiler.FEnumType, org.jmodelica.modelica.compiler.FIntegerType, and org.jmodelica.modelica.compiler.FRealType.

FExp org.jmodelica.modelica.compiler.FType.createRecordConstructor ( FQName  name  ) 

Create a record constructor (or FArray of record constructors), with the arguments taken from a record variable with the given name.

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

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

Create a record constructor with the arguments taken from a record variable with the given name.

Assumes that name refers to a non-array variable (or a specific cell in an array variable). method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:1292

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

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

Creates temporary variables for a record with the given name.

Parameters:
vars list of variable to add the new variables to
equation if true, generate FVariables, otherwise a FFunctionVariable
name the name of the record variable
param if true, generate parameters method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:1254

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

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

Creates a new temporary variable with the given name.

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

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

void org.jmodelica.modelica.compiler.FType.createTempFVariables ( List  vars,
FQName  name,
boolean  param 
)

Creates a new temporary varable with the given name.

If this is an array, variables are created for each cell.

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

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

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

boolean org.jmodelica.modelica.compiler.FType.dimensionCompatible ( FType  type  ) 

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

CValue org.jmodelica.modelica.compiler.FType.div ( CValue  v1,
CValue  v2 
)

Division of constant values.

Parameters:
v1 Constant value of left operand.
v2 Constant value of right operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2244

Reimplemented in org.jmodelica.modelica.compiler.FIntegerType, and org.jmodelica.modelica.compiler.FRealType.

FType org.jmodelica.modelica.compiler.FType.enclosingArrayType ( int  size  ) 

Add an enclosing dimension to type.

Returns a FType that is a copy of this one, but with one more dimension, added first. If this type is scalar, an array type is created instead. syn InstBindingType /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:555

Reimplemented in org.jmodelica.modelica.compiler.FUnknownType.

CValue org.jmodelica.modelica.compiler.FType.equ ( CValue  v1,
CValue  v2 
)

Equals comparison for constant values.

Parameters:
v1 Constant value of left operand.
v2 Constant value of right operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2329

Reimplemented in org.jmodelica.modelica.compiler.FRealType, and org.jmodelica.modelica.compiler.FStringType.

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

boolean org.jmodelica.modelica.compiler.FType.equivalentTo ( FType  type  ) 

String org.jmodelica.modelica.compiler.FType.exportWrapperType_C (  ) 

syn ExportFunctions /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/ExportFunctions.jadd:56

Reimplemented in org.jmodelica.modelica.compiler.FIntegerType, and org.jmodelica.modelica.compiler.FRealType.

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

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

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

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

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

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

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

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

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

method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1262

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

method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1258

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

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

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

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

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

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

method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1074

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

method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1053

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

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

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

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

method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1089

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

method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1068

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

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

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

method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1244

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

method CADCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CADCodeGen.jrag:1230

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

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

CValue org.jmodelica.modelica.compiler.FType.geq ( CValue  v1,
CValue  v2 
)

Greater or equal than comparison for constant values.

Parameters:
v1 Constant value of left operand.
v2 Constant value of right operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2361

Reimplemented in org.jmodelica.modelica.compiler.FRealType, and org.jmodelica.modelica.compiler.FStringType.

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

String org.jmodelica.modelica.compiler.FType.getXMLType (  ) 

syn XMLValueMethods /tmp/JModelica/Compiler/ModelicaXMLBackEnd/src/jastadd/codegen/XMLValueGenerator.jrag:118

Reimplemented in org.jmodelica.modelica.compiler.FEnumType.

CValue org.jmodelica.modelica.compiler.FType.gt ( CValue  v1,
CValue  v2 
)

Greater than comparison for constant values.

Parameters:
v1 Constant value of left operand.
v2 Constant value of right operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2377

Reimplemented in org.jmodelica.modelica.compiler.FRealType, and org.jmodelica.modelica.compiler.FStringType.

boolean org.jmodelica.modelica.compiler.FType.hasAdd (  ) 

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

Reimplemented in org.jmodelica.modelica.compiler.FPrimitiveNumericType, and org.jmodelica.modelica.compiler.FStringType.

Indices org.jmodelica.modelica.compiler.FType.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:1636

boolean org.jmodelica.modelica.compiler.FType.isArray (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isBoolean (  ) 

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

Reimplemented in org.jmodelica.modelica.compiler.FBooleanType.

boolean org.jmodelica.modelica.compiler.FType.isBooleanArray (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isBooleanScalar (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isComposite (  ) 

syn FlatTypes /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatAPI.jrag:1203

boolean org.jmodelica.modelica.compiler.FType.isEnum (  ) 

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

Reimplemented in org.jmodelica.modelica.compiler.FEnumType.

boolean org.jmodelica.modelica.compiler.FType.isEnumArray (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isEnumScalar (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isInteger (  ) 

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

Reimplemented in org.jmodelica.modelica.compiler.FIntegerType.

boolean org.jmodelica.modelica.compiler.FType.isIntegerArray (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isIntegerScalar (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isNumeric (  ) 

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

Reimplemented in org.jmodelica.modelica.compiler.FPrimitiveNumericType.

boolean org.jmodelica.modelica.compiler.FType.isNumericArray (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isNumericScalar (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isPrimitive (  ) 

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

Reimplemented in org.jmodelica.modelica.compiler.FPrimitiveType.

boolean org.jmodelica.modelica.compiler.FType.isPrimitiveArray (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isPrimitiveScalar (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isReal (  ) 

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

Reimplemented in org.jmodelica.modelica.compiler.FRealType.

boolean org.jmodelica.modelica.compiler.FType.isRealArray (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isRealScalar (  ) 

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

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

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

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

boolean org.jmodelica.modelica.compiler.FType.isRecordArray (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isRecordScalar (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isScalar (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isString (  ) 

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

Reimplemented in org.jmodelica.modelica.compiler.FStringType.

boolean org.jmodelica.modelica.compiler.FType.isStringArray (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isStringScalar (  ) 

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

boolean org.jmodelica.modelica.compiler.FType.isUnknown (  ) 

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

Reimplemented in org.jmodelica.modelica.compiler.FUnknownType.

CValue org.jmodelica.modelica.compiler.FType.leq ( CValue  v1,
CValue  v2 
)

Less or equal than comparison for constant values.

Parameters:
v1 Constant value of left operand.
v2 Constant value of right operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2393

Reimplemented in org.jmodelica.modelica.compiler.FRealType, and org.jmodelica.modelica.compiler.FStringType.

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

Combine two types to the broadest common numeric denominator.

If either is non-numeric or if both are array and sizes doesn't match, the unknown type is returned. An integer type combined with a real type results in a real type. If allowUnknown is true, then unknown lengths are considered equal to any length. syn TypePromotion /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:658

Reimplemented in org.jmodelica.modelica.compiler.FPrimitiveNumericType.

FType org.jmodelica.modelica.compiler.FType.looseNumericPromotion ( FType  type  ) 

Combine two types to the broadest common numeric denominator.

If either is non-numeric or if both are array and sizes doesn't match, the unknown type is returned. An integer type combined with a real type results in a real type. syn TypePromotion /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:595

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

Combine two types to the broadest common denominator.

If scalar types are not compatible or if both are array and sizes doesn't match, the unknown type is returned. An integer type combined with a real type results in a real type. If allowUnknown is true, then unknown lengths are considered equal to any length. syn TypePromotion /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:628

FType org.jmodelica.modelica.compiler.FType.looseTypePromotion ( FType  type  ) 

Combine two types to the broadest common denominator.

If scalar types are not compatible or if both are array and sizes doesn't match, the unknown type is returned. An integer type combined with a real type results in a real type. syn TypePromotion /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:577

CValue org.jmodelica.modelica.compiler.FType.lt ( CValue  v1,
CValue  v2 
)

Less than comparison for constant values.

Parameters:
v1 Constant value of left operand.
v2 Constant value of right operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2409

Reimplemented in org.jmodelica.modelica.compiler.FRealType, and org.jmodelica.modelica.compiler.FStringType.

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

CValue org.jmodelica.modelica.compiler.FType.mul ( CValue  v1,
CValue  v2 
)

Multiplication of constant values.

Parameters:
v1 Constant value of left operand.
v2 Constant value of right operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2230

Reimplemented in org.jmodelica.modelica.compiler.FIntegerType, and org.jmodelica.modelica.compiler.FRealType.

FEnumDecl org.jmodelica.modelica.compiler.FType.myFEnumDecl (  ) 

syn FlatEnumBinding /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatNameBinding.jrag:324

Reimplemented in org.jmodelica.modelica.compiler.FEnumType.

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

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

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

abstract String org.jmodelica.modelica.compiler.FType.name (  )  [pure virtual]

int org.jmodelica.modelica.compiler.FType.ndims (  ) 

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

CValue org.jmodelica.modelica.compiler.FType.neg ( CValue  v  ) 

Negation of a constant value.

Parameters:
v Constant value of operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2269

Reimplemented in org.jmodelica.modelica.compiler.FIntegerType, and org.jmodelica.modelica.compiler.FRealType.

CValue org.jmodelica.modelica.compiler.FType.neq ( CValue  v1,
CValue  v2 
)

Not equal comparison for constant values.

Parameters:
v1 Constant value of left operand.
v2 Constant value of right operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2345

Reimplemented in org.jmodelica.modelica.compiler.FRealType, and org.jmodelica.modelica.compiler.FStringType.

int org.jmodelica.modelica.compiler.FType.nextTempNbr_C (  ) 

inh CCodeGen /tmp/JModelica/Compiler/ModelicaCBackEnd/src/jastadd/CCodeGen.jrag:1087

CValue org.jmodelica.modelica.compiler.FType.not ( CValue  v  ) 

Not expression for constant values.

Parameters:
v Constant value of operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2317

Reimplemented in org.jmodelica.modelica.compiler.FBooleanType.

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

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

Combine two types to the broadest common numeric denominator.

If either is non-numeric or if sizes doesn't match, the unknown type is returned. An integer type combined with a real type results in a real type. If allowUnknown is true, then unknown lengths are considered equal to any length. syn TypePromotion /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:646

Reimplemented in org.jmodelica.modelica.compiler.FPrimitiveNumericType.

FType org.jmodelica.modelica.compiler.FType.numericPromotion ( FType  type  ) 

Combine two types to the broadest common numeric denominator.

If either is non-numeric or if sizes doesn't match, the unknown type is returned. An integer type combined with a real type results in a real type. syn TypePromotion /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:586

boolean org.jmodelica.modelica.compiler.FType.onlyContainsReal (  ) 

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

CValue org.jmodelica.modelica.compiler.FType.or ( CValue  v1,
CValue  v2 
)

Or expression for constant values.

Parameters:
v1 Constant value of left operand.
v2 Constant value of right operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2306

Reimplemented in org.jmodelica.modelica.compiler.FBooleanType.

CValue org.jmodelica.modelica.compiler.FType.pow ( CValue  v1,
CValue  v2 
)

Power expression for constant values.

Parameters:
v1 Constant value of left operand.
v2 Constant value of right operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2258

Reimplemented in org.jmodelica.modelica.compiler.FRealType.

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

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

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

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

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

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

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

void org.jmodelica.modelica.compiler.FType.scalarizeRecordArrayAssignment ( 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.

This method delegates to scalarizeRecordAssignment() for each cell in the array, or for the entire scalar expression. method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:660

void org.jmodelica.modelica.compiler.FType.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:688

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

FType org.jmodelica.modelica.compiler.FType.scalarNumericPromotion ( FType  type  ) 

Combine two types to the broadest common scalar numeric denominator.

If either is non-numeric, the unknown type is returned. An integer type combined with a real type results in a real type. syn TypePromotion /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:603

Reimplemented in org.jmodelica.modelica.compiler.FPrimitiveNumericType.

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

Generate scalar FEquations for this record component.

Parameters:
eqns the list of FEquations to add the equation to
suffix add this as a suffix to the name of the uppermost record in uses
indexMap translations for indices in the expressions
left the left expression from the original equation
right the right expression from the original equation method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:946

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

Generate scalar FEquations for this record or record component.

Parameters:
eqns the list of FEquations to add the equation to
suffix add this as a suffix to the name of the uppermost record in uses
indexMap translations for indices in the expressions
left the left expression from the original equation
right the right expression from the original equation method Scalarization /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/Scalarization.jrag:920

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

FType org.jmodelica.modelica.compiler.FType.scalarType (  ) 

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

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

Reimplemented in org.jmodelica.modelica.compiler.FRecordType.

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

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

Size org.jmodelica.modelica.compiler.FType.size (  ) 

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

FType org.jmodelica.modelica.compiler.FType.sizedType ( Size  s  ) 

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

CValue org.jmodelica.modelica.compiler.FType.sub ( CValue  v1,
CValue  v2 
)

Subtraction of constant values.

Parameters:
v1 Constant value of left operand.
v2 Constant value of right operand.
Returns:
Resulting constant value. syn ConstantEvaluation /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/ConstantEvaluation.jrag:2216

Reimplemented in org.jmodelica.modelica.compiler.FIntegerType, and org.jmodelica.modelica.compiler.FRealType.

String org.jmodelica.modelica.compiler.FType.toString (  ) 

syn PrettyPrint /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/PrettyPrint.jrag:692

String org.jmodelica.modelica.compiler.FType.type_C (  ) 

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

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

boolean org.jmodelica.modelica.compiler.FType.typeCompatible ( FType  type  ) 

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

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

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

Reimplemented in org.jmodelica.modelica.compiler.FEnumType, and org.jmodelica.modelica.compiler.FRecordType.

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

Combine two types to the broadest common denominator.

If types are not compatible, the unknown type is returned. An integer type combined with a real type results in a real type. If allowUnknown is true, then unknown lengths are considered equal to any length. syn TypePromotion /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:613

FType org.jmodelica.modelica.compiler.FType.typePromotion ( FType  type  ) 

Combine two types to the broadest common denominator.

If types are not compatible, the unknown type is returned. An integer type combined with a real type results in a real type. syn TypePromotion /tmp/JModelica/Compiler/ModelicaFrontEnd/src/jastadd/FlatTypeAnalysis.jrag:568

void org.jmodelica.modelica.compiler.FType.updateFUnknownSizeExps ( AbstractFVariable  var  ) 

Change the variable of any FUnknownSizeExp in size to the given variable.

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

FExp org.jmodelica.modelica.compiler.FType.wrapRangeSizeExp ( FExp  exp  ) 

Wrap the given expression so it is suitable for use in an expression calculating the array size of a range expression.

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

Reimplemented in org.jmodelica.modelica.compiler.FBooleanType, and org.jmodelica.modelica.compiler.FEnumType.

FExp org.jmodelica.modelica.compiler.FType.zeroLiteral (  ) 

Create a literal with the zero value for this type, if applicable.

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

Reimplemented in org.jmodelica.modelica.compiler.FBooleanType, org.jmodelica.modelica.compiler.FIntegerType, org.jmodelica.modelica.compiler.FRealType, and org.jmodelica.modelica.compiler.FStringType.


Member Data Documentation

internal

internal

internal

internal

internal

internal

* internal * method FlatModelica.ast:8

* internal


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

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