ExpressionEngine ClassµStrata MathDaemon™ Computation LibraryMathDaemon Class Library
Core class intended to store all expressions and their compiled versions
Inheritance Hierarchy

System Object
  uStrata.MathDaemon.Computation ExpressionEngine

Namespace: uStrata.MathDaemon.Computation
Assembly: uStrata.MathDaemon.Computation (in uStrata.MathDaemon.Computation.dll) Version: 1.1.5779.28281
Syntax

public class ExpressionEngine

The ExpressionEngine type exposes the following members.

Constructors

  NameDescription
Public methodExpressionEngine
Constructor. Creates an instance of ExpressionEngine class
Top
Methods

  NameDescription
Public methodCheckSyntax 
Performs parsing (syntax check) for all expressions (including ternary) stored in the engine. Provides a detailed information about error in case of failure
Public methodCheckSyntax(String)
Performs parsing (syntax check) for passed expression. Provides a detailed information about error in case of failure
Public methodClean
Removes all expressions and parameters from its collections and removes compiled code from the memory.
Public methodCleanExpressions
Removes compiled code from the memory. Parameters and expressions are not removed and becomes available for editing.
Public methodCompile
Compiles all defined expressions, if parsing passed
Public methodExecute(String)
Performs a calculation of previously compiled formula by its name
Public methodExecute(String, Dictionary String, Double )
Performs a calculation of previously compiled formula by its name using passed values.
Public methodExecuteAll 
Performs a calculation for all stored formulas
Public methodExecuteAll(Dictionary String, Double )
Performs a calculation for all stored formulas using passed values.
Public methodExecuteExpressions 
Performs a calculation for all stored expressions (ternary expressions are not included)
Public methodExecuteExpressions(Dictionary String, Double )
Performs a calculation for all stored expressions (ternary expressions are not included) using passed values.
Public methodExecuteTernaryExpressions 
Performs a calculation for all stored ternary expressions
Public methodExecuteTernaryExpressions(Dictionary String, Double )
Performs a calculation for all stored ternary expressions using passed values.
Public methodExpressionAdd
Add a single expression to the storage. Only 3 expressions should be added for free version.

Passed formula is not checked for correct syntax.

Public methodExpressionEdit
Edit a formula of the expression

Passed formula is not checked for correct syntax.

Public methodExpressionEditName
Renames expression. All dependent expressions will be updated.
Public methodExpressionExists
Check if passed expression name stored within the collection
Public methodExpressionRemove
Removes passed expression from the collection.

If the expression is used within any another expression, error will be raised on parsing only.

Public methodFindCircularReferences
Find all expressions and ternary expressions that points to themselves directly or via intermediate expression.
Public methodGetExpression
Retrieve an expression by its name
Public methodGetParameterValue
Retrieve currently stored parameter value by its name
Public methodGetTernaryExpression
Retrieve an ternary expression structure by its name
Public methodParameterAdd
Add a single parameter to the storage. Only 3 parameters should be added for free version.
Public methodParameterEdit
Renames parameter. All dependent expressions will be updated.
Public methodParameterExists
Check if passed parameter name stored within the collection
Public methodParameterRemove
Removes passed parameter from the collection.

If the parameter is used within any expression, error will be raised on parsing only.

Public methodSetParameterValue(Dictionary String, Double )
Assign new values to all parameters passed in the list
Public methodSetParameterValue(String, Double)
Assigned new value to passed parameter name
Public methodTernaryExpressionAdd
Add a single ternary expression to the storage. Only 3 ternary expressions should be added for free version.

Passed formula is not checked for correct syntax.

Ternary expression will be composed in the followed way:

ifLeft compareType ifRight THEN thenExpression ELSE elseExpression

Or, in ternary way

ifLeft compareType ifRight ? thenExpression : elseExpression

Public methodTernaryExpressionEdit
Edit a formula of the ternary expression

Passed formula is not checked for correct syntax.

Ternary expression will be composed in the followed way:

ifLeft compareType ifRight THEN thenExpression ELSE elseExpression

Or, in ternary way

ifLeft compareType ifRight ? thenExpression : elseExpression

Public methodTernaryExpressionEditName
Renames ternary expression. All dependent expressions will be updated.
Public methodTernaryExpressionExists
Check if passed ternary expression name stored within the collection
Public methodTernaryExpressionRemove
Removes passed ternary expression from the collection.

If the expression is used within any another expression, error will be raised on parsing only.

Top
Properties

  NameDescription
Public propertyAngleMode
AngleMode value to be used for all trigonometrical calculations
Public propertyDescription
Optional description for the instance
Public propertyEstimate
Estimate value to be used for comparison evaluations such as Equal, NotEqual, GreaterEqual and LessEqual

Field Value

Type:
double
Public propertyFormulaCount
Number of expressions stored within the instance. Ternary expressions are not included.
Public propertyFormulaList
Collection of expressions stored within the instance. Ternary expressions are not included.
Public propertyInstanceId
Unique object identifier generated once when the object is created.

Used internally to support an instance tree belongs to several users.

May be set via object initializer only.

Public propertyName
Optional name for the instance
Public propertyParameterCount
Number of parameters stored within the instance.
Public propertyParameterList
Collection of parameters defined for the instance.
Public propertyRegisteredFunctionCount
Number of built-in functions supported by the engine
Public propertyRegisteredFunctionList
Collection of standard built-in mathematical functions supported by the engine
Public propertySessionId
Unique identifier describes the session that current instance belongs

Used internally to support an instance tree belongs to several users and their sessions.

May be set via object initializer only.

Public propertyStandardConstantCount
Number of standard constants supported by the engine
Public propertyStandardConstantList
Collection of standard constants supported by the engine
Public propertyStopReason
The property stored last error occurred while object instance is used
Public propertyTernaryExpressionCount
Number of ternary expressions stored within the instance
Public propertyTernaryExpressionList
Collection of ternary expressions stored within the instance
Top
See Also