C# Class DataDictionary.Interpreter.DerefExpression

Inheritance: Expression
Show file Open project: ERTMSSolutions/ERTMSFormalSpecs Class Usage Examples

Public Methods

Method Description
CheckExpression ( ) : void

Checks the expression and appends errors to the root tree node when inconsistencies are found

CreateGraph ( DataDictionary.Interpreter.InterpretationContext context, Utils.Parameter parameter, ExplanationPart explain ) : Graph

Creates the graph associated to this expression, when the given parameter ranges over the X axis

CreateSurface ( DataDictionary.Interpreter.InterpretationContext context, Utils.Parameter xParam, Utils.Parameter yParam, ExplanationPart explain ) : Surface

Provides the surface of this function if it has been statically defined

DerefExpression ( ModelElement root, ModelElement log, List arguments, DataDictionary.Interpreter.ParsingData parsingData ) : System

Constructor

Fill ( List retVal, BaseFilter filter ) : void

Fills the list provided with the element matching the filter provided

GetCalled ( DataDictionary.Interpreter.InterpretationContext context, ExplanationPart explain ) : ICallable

Provides the callable that is called by this expression

GetExplain ( TextualExplanation explanation, bool explainSubElements = true ) : void

Builds the explanation of the element

GetExpressionType ( ) : Type

Provides the type of this expression

GetPrefixValue ( DataDictionary.Interpreter.InterpretationContext context, int elementCount, ExplanationPart explain ) : INamable

Provides the value of the prefix of the expression

GetReferences ( INamable instance, BaseFilter expectation, bool last ) : DataDictionary.Interpreter.ReturnValue

Provides the possible references for this expression (only available during semantic analysis)

GetVariable ( DataDictionary.Interpreter.InterpretationContext context ) : IVariable

Provides the variable referenced by this expression, if any

IsInstance ( ) : bool

Indicates whether this expression references an instance

SemanticAnalysis ( INamable instance, BaseFilter expectation ) : bool

Performs the semantic analysis of the expression

Protected Methods

Method Description
GetValue ( DataDictionary.Interpreter.InterpretationContext context, ExplanationPart explain ) : IValue

Provides the value associated to this Expression

Method Details

CheckExpression() public method

Checks the expression and appends errors to the root tree node when inconsistencies are found
public CheckExpression ( ) : void
return void

CreateGraph() public method

Creates the graph associated to this expression, when the given parameter ranges over the X axis
public CreateGraph ( DataDictionary.Interpreter.InterpretationContext context, Utils.Parameter parameter, ExplanationPart explain ) : Graph
context DataDictionary.Interpreter.InterpretationContext The interpretation context
parameter Utils.Parameter The parameters of *the enclosing function* for which the graph should be created
explain ExplanationPart
return Graph

CreateSurface() public method

Provides the surface of this function if it has been statically defined
public CreateSurface ( DataDictionary.Interpreter.InterpretationContext context, Utils.Parameter xParam, Utils.Parameter yParam, ExplanationPart explain ) : Surface
context DataDictionary.Interpreter.InterpretationContext the context used to create the surface
xParam Utils.Parameter The X axis of this surface
yParam Utils.Parameter The Y axis of this surface
explain ExplanationPart
return Surface

DerefExpression() public method

Constructor
public DerefExpression ( ModelElement root, ModelElement log, List arguments, DataDictionary.Interpreter.ParsingData parsingData ) : System
root ModelElement
log ModelElement
arguments List
parsingData DataDictionary.Interpreter.ParsingData Additional information about the parsing process
return System

Fill() public method

Fills the list provided with the element matching the filter provided
public Fill ( List retVal, BaseFilter filter ) : void
retVal List The list to be filled with the element matching the condition expressed in the filter
filter BaseFilter The filter to apply
return void

GetCalled() public method

Provides the callable that is called by this expression
public GetCalled ( DataDictionary.Interpreter.InterpretationContext context, ExplanationPart explain ) : ICallable
context DataDictionary.Interpreter.InterpretationContext
explain ExplanationPart
return ICallable

GetExplain() public method

Builds the explanation of the element
public GetExplain ( TextualExplanation explanation, bool explainSubElements = true ) : void
explanation TextualExplanation
explainSubElements bool Precises if we need to explain the sub elements (if any)
return void

GetExpressionType() public method

Provides the type of this expression
public GetExpressionType ( ) : Type
return DataDictionary.Types.Type

GetPrefixValue() public method

Provides the value of the prefix of the expression
public GetPrefixValue ( DataDictionary.Interpreter.InterpretationContext context, int elementCount, ExplanationPart explain ) : INamable
context DataDictionary.Interpreter.InterpretationContext The context on which the value must be found
elementCount int The number of elements to consider
explain ExplanationPart
return INamable

GetReferences() public method

Provides the possible references for this expression (only available during semantic analysis)
public GetReferences ( INamable instance, BaseFilter expectation, bool last ) : DataDictionary.Interpreter.ReturnValue
instance INamable the instance on which this element should be found.
expectation BaseFilter the expectation on the element found
last bool indicates that this is the last element in a dereference chain
return DataDictionary.Interpreter.ReturnValue

GetValue() protected method

Provides the value associated to this Expression
protected GetValue ( DataDictionary.Interpreter.InterpretationContext context, ExplanationPart explain ) : IValue
context DataDictionary.Interpreter.InterpretationContext The context on which the value must be found
explain ExplanationPart The explanation to fill, if any
return IValue

GetVariable() public method

Provides the variable referenced by this expression, if any
public GetVariable ( DataDictionary.Interpreter.InterpretationContext context ) : IVariable
context DataDictionary.Interpreter.InterpretationContext The context on which the variable must be found
return IVariable

IsInstance() public method

Indicates whether this expression references an instance
public IsInstance ( ) : bool
return bool

SemanticAnalysis() public method

Performs the semantic analysis of the expression
public SemanticAnalysis ( INamable instance, BaseFilter expectation ) : bool
instance INamable the reference instance on which this element should analysed
expectation BaseFilter Indicates the kind of element we are looking for
return bool