- All Superinterfaces:
Expression,Sourceable
A memory unit expression is an expression that represents (part of) the
memory related to some variable. There are four kinds of such expressions:
- SELF: a single variable
- ARRAY_ELE: an element of an array
- ARRAY_SLICE: a slice (several elements) of an array
- STRUCT_ELE: an element of a struct
-
Nested Class Summary
Nested classes/interfaces inherited from interface dev.civl.mc.model.IF.expression.Expression
Expression.ExpressionKind -
Method Summary
Methods inherited from interface dev.civl.mc.model.IF.expression.Expression
calculateConstantValue, calculateDerefs, constantValue, containsHere, expressionKind, expressionScope, freeVariables, getExpressionType, hasConstantValue, hasDerefs, isErrorFree, isPurelyLocal, lowestScope, purelyLocalAnalysis, purelyLocalAnalysisOfVariables, replaceWith, replaceWith, setErrorFree, variableAddressedOf, variableAddressedOfMethods inherited from interface dev.civl.mc.model.IF.Sourceable
getSource, setCIVLSource
-
Method Details
-
scopeId
int scopeId()Returns the (static) scope id of the variable.- Returns:
- The (static) scope id of the variable.
-
variableId
int variableId()Returns the variable ID.- Returns:
- The variable ID.
-
variable
Variable variable() -
reference
MemoryUnitReference reference()Returns the reference of this memory unit expression.- Returns:
- The reference of this memory unit expression.
-
objectType
CIVLType objectType() -
writable
boolean writable() -
deref
boolean deref()shall this memory unit be dereferenced?- Returns:
-