C# Class DataDictionary.Interpreter.LetExpression

LET variable <- expression IN expression LET variable '=>' expression IN expression
Inheritance: Expression, ISubDeclarator
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

Fill ( List retVal, DataDictionary.Interpreter.Filter.BaseFilter filter ) : void

Fills the list provided with the element matching the filter provided

Find ( string name, List retVal ) : void

Appends the INamable which match the name provided in retVal

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

Builds the explanation of the element

GetExpressionType ( ) : DataDictionary.Types.Type

Provides the type of this expression

InitDeclaredElements ( ) : void

Initialises the declared elements

LetExpression ( ModelElement root, ModelElement log, string boundVariableName, Expression bindingExpression, Expression expression, DataDictionary.Interpreter.ParsingData parsingData ) : System.Collections.Generic

Constructor

SemanticAnalysis ( INamable instance, DataDictionary.Interpreter.Filter.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

Fill() public method

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

Find() public method

Appends the INamable which match the name provided in retVal
public Find ( string name, List retVal ) : void
name string
retVal List
return void

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 ( ) : DataDictionary.Types.Type
return DataDictionary.Types.Type

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

InitDeclaredElements() public method

Initialises the declared elements
public InitDeclaredElements ( ) : void
return void

LetExpression() public method

Constructor
public LetExpression ( ModelElement root, ModelElement log, string boundVariableName, Expression bindingExpression, Expression expression, DataDictionary.Interpreter.ParsingData parsingData ) : System.Collections.Generic
root ModelElement the root element for which this expression should be parsed
log ModelElement
boundVariableName string The name of the bound variable
bindingExpression Expression The binding expression which provides the value of the variable
expression Expression The expression to be evaluated
parsingData DataDictionary.Interpreter.ParsingData Additional information about the parsing process
return System.Collections.Generic

SemanticAnalysis() public method

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