Class PCMStoExEvaluationVisitor
- java.lang.Object
-
- org.eclipse.emf.ecore.util.Switch<T>
-
- de.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
- de.uka.ipd.sdq.pcm.stochasticexpressions.PCMStoExSwitch
-
- de.uka.ipd.sdq.simucomframework.variables.stoexvisitor.PCMStoExEvaluationVisitor
-
public class PCMStoExEvaluationVisitor extends de.uka.ipd.sdq.pcm.stochasticexpressions.PCMStoExSwitch
Visitor to evaluate stoex. It executes the corresponding Java mathematical operations at each operator. It partially relies on the types infered to do its casts
-
-
Constructor Summary
Constructors Constructor Description PCMStoExEvaluationVisitor(StoExCacheEntry cacheEntry, SimulatedStackframe<Object> frame, VariableMode initialMode, de.uka.ipd.sdq.probfunction.math.IProbabilityFunctionFactory probFunctionFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Object
caseBooleanOperatorExpression(de.uka.ipd.sdq.stoex.BooleanOperatorExpression object)
Object
caseBoolLiteral(de.uka.ipd.sdq.stoex.BoolLiteral object)
Object
caseCharacterisedVariable(org.palladiosimulator.pcm.parameter.CharacterisedVariable object)
Object
caseCompareExpression(de.uka.ipd.sdq.stoex.CompareExpression object)
Object
caseDoubleLiteral(de.uka.ipd.sdq.stoex.DoubleLiteral object)
Object
caseFunctionLiteral(de.uka.ipd.sdq.stoex.FunctionLiteral object)
Object
caseIfElseExpression(de.uka.ipd.sdq.stoex.IfElseExpression object)
Object
caseIntLiteral(de.uka.ipd.sdq.stoex.IntLiteral object)
Object
caseNegativeExpression(de.uka.ipd.sdq.stoex.NegativeExpression object)
Object
caseNotExpression(de.uka.ipd.sdq.stoex.NotExpression object)
Object
caseParenthesis(de.uka.ipd.sdq.stoex.Parenthesis object)
Object
casePowerExpression(de.uka.ipd.sdq.stoex.PowerExpression object)
Object
caseProbabilityFunctionLiteral(de.uka.ipd.sdq.stoex.ProbabilityFunctionLiteral object)
Object
caseProductExpression(de.uka.ipd.sdq.stoex.ProductExpression object)
Object
caseStringLiteral(de.uka.ipd.sdq.stoex.StringLiteral object)
Object
caseTermExpression(de.uka.ipd.sdq.stoex.TermExpression object)
VariableMode
getVariableMode()
void
setVariableMode(VariableMode mode)
-
Methods inherited from class de.uka.ipd.sdq.stoex.util.StoexSwitch
caseAbstractNamedReference, caseAtom, caseBooleanExpression, caseComparison, caseExpression, caseIfElse, caseNamespaceReference, caseNumericLiteral, casePower, caseProduct, caseRandomVariable, caseTerm, caseUnary, caseUnitCarryingElement, caseVariable, caseVariableReference, defaultCase, doSwitch, isSwitchFor
-
-
-
-
Constructor Detail
-
PCMStoExEvaluationVisitor
public PCMStoExEvaluationVisitor(StoExCacheEntry cacheEntry, SimulatedStackframe<Object> frame, VariableMode initialMode, de.uka.ipd.sdq.probfunction.math.IProbabilityFunctionFactory probFunctionFactory)
-
-
Method Detail
-
setVariableMode
public void setVariableMode(VariableMode mode)
-
getVariableMode
public VariableMode getVariableMode()
-
caseCharacterisedVariable
public Object caseCharacterisedVariable(org.palladiosimulator.pcm.parameter.CharacterisedVariable object)
- Overrides:
caseCharacterisedVariable
in classde.uka.ipd.sdq.pcm.stochasticexpressions.PCMStoExSwitch
-
caseCompareExpression
public Object caseCompareExpression(de.uka.ipd.sdq.stoex.CompareExpression object)
- Overrides:
caseCompareExpression
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
caseDoubleLiteral
public Object caseDoubleLiteral(de.uka.ipd.sdq.stoex.DoubleLiteral object)
- Overrides:
caseDoubleLiteral
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
caseIntLiteral
public Object caseIntLiteral(de.uka.ipd.sdq.stoex.IntLiteral object)
- Overrides:
caseIntLiteral
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
caseStringLiteral
public Object caseStringLiteral(de.uka.ipd.sdq.stoex.StringLiteral object)
- Overrides:
caseStringLiteral
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
caseParenthesis
public Object caseParenthesis(de.uka.ipd.sdq.stoex.Parenthesis object)
- Overrides:
caseParenthesis
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
caseProbabilityFunctionLiteral
public Object caseProbabilityFunctionLiteral(de.uka.ipd.sdq.stoex.ProbabilityFunctionLiteral object)
- Overrides:
caseProbabilityFunctionLiteral
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
caseProductExpression
public Object caseProductExpression(de.uka.ipd.sdq.stoex.ProductExpression object)
- Overrides:
caseProductExpression
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
caseTermExpression
public Object caseTermExpression(de.uka.ipd.sdq.stoex.TermExpression object)
- Overrides:
caseTermExpression
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
caseBooleanOperatorExpression
public Object caseBooleanOperatorExpression(de.uka.ipd.sdq.stoex.BooleanOperatorExpression object)
- Overrides:
caseBooleanOperatorExpression
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
caseNegativeExpression
public Object caseNegativeExpression(de.uka.ipd.sdq.stoex.NegativeExpression object)
- Overrides:
caseNegativeExpression
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
caseBoolLiteral
public Object caseBoolLiteral(de.uka.ipd.sdq.stoex.BoolLiteral object)
- Overrides:
caseBoolLiteral
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
caseNotExpression
public Object caseNotExpression(de.uka.ipd.sdq.stoex.NotExpression object)
- Overrides:
caseNotExpression
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
casePowerExpression
public Object casePowerExpression(de.uka.ipd.sdq.stoex.PowerExpression object)
- Overrides:
casePowerExpression
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
caseFunctionLiteral
public Object caseFunctionLiteral(de.uka.ipd.sdq.stoex.FunctionLiteral object)
- Overrides:
caseFunctionLiteral
in classde.uka.ipd.sdq.stoex.util.StoexSwitch<Object>
-
-