Click or drag to resize
ExpressionEvaluator Class
Class used for MacroExpression evaluation.
Inheritance Hierarchy
SystemObject
  CMS.MacroEngineExpressionEvaluator

Namespace: CMS.MacroEngine
Assembly: CMS.MacroEngine (in CMS.MacroEngine.dll) Version: 13.0.131
Syntax
C#
public class ExpressionEvaluator

The ExpressionEvaluator type exposes the following members.

Constructors
  NameDescription
Public methodExpressionEvaluator
Constructor.
Top
Properties
  NameDescription
Protected propertyChildren
Child expressions of the expression.
Public propertyContext
Evaluation context.
Public propertyExpression
Expression to evaluate.
Protected propertyName
Name of the data member or method call.
Protected propertyParent
Parent expression of the expression.
Protected propertyType
Returns the expression type.
Protected propertyValue
Value of the value expression (is null for expression types like method, property, etc.).
Top
Methods
  NameDescription
Protected methodCheckForTimeout
Checks whether the evaluation time did not exceed the specified limit.
Public methodEvaluate
Evaluates the expression and returns the result. Sets the result of security check into MacroEvalParameters object.
Protected methodEvaluateChild
Evaluates the child expression (uses the same context, does not create a child context).
Protected methodEvaluateInternal
Evaluates the expression and returns the result.
Public methodEvaluateMethodCall
Evaluates general method call.
Protected methodGetDebugIndent
Returns the indentation of the debug item (counts deepness withing blocks {...})
Protected methodHasNumberOfChildren
Returns true if the current expression node has exactly specified number of children.
Protected methodStatic memberIsEnumObjectEqual
Compares the given enumeration object with any object. If the object is not enumeration of the same type, then compares it according its values (integer enumeration with integer, otherwise as text constants).
Public methodStatic memberIsEqual
Returns true if first parameter is equal to the second. Handles several specialties: 1) GUID is equal also to string representation of GUID (case insensitive regardless the context setting). 2) Simple data types are equal to their ToString representation. 3) InfoObject is equal also to string constant if it's either its display name or code name. 4) Two info objects are equal when they have same object type and same ID. 5) Empty string is equal to null.
Protected methodStatic memberIsInfoInfoEqual
Returns true if two Info objects are equal (have same object type and ID).
Protected methodIsMethodWithName
Returns true if the type of current expression is MethodCall with specified name.
Protected methodStatic memberIsObjectStringEqual
Returns true if given object has code name or display name equal to specified name.
Protected methodStatic memberIsStringStringEqual
Returns true if the two strings are equal. Empty string is equal to null.
Protected methodUpdateEvaluationContextFromParameters
Reads all the in-line macro parameters and modifies the default evaluation context accordingly.
Top
See Also