Namespace Quantellia.WMServer.Execution.Compilation
Classes
CompiledElementBase
The process of compiling decision models to runnable code involves several steps of parsing, replacement, normalization, etc... Each decision model element type serves a similar purpose, and therefore compiles to a similar form. Furthermore, decision model elements retain a parent based hierarchical means of identification; this remains true regardless of which language we are compiling code for.
The purpose of a CompiledElementBase is to transform a decision model element into a normalized form valid given a chosen CompiledElementBase.Syntax. This allows generalizable steps in compilation to be performed in an ICompiledElementFactory<T_CompiledElement>, and language specific steps in compilation to be performed in an ICompiler
CompiledVariableElement
A VariableElement represented in a normalized fashion
CompiledVariableElementFactory
Parses the expressions from a list of VariableElements into a dependency resolved normalized list of CompiledVariableElements.
ElementDependencyResults
An API facing representation of a DecisionModelElement and its dependencies.
Interfaces
ICompiledElementFactory<T_CompiledElement>
This interface describes the functions an ICompiledElementFactory<T_CompiledElement> must perform. An ICompiledElementFactory<T_CompiledElement> derived class will contain static methods capable of parsing a list of DecisionModelElements into a dependency resolved normalized list of CompiledElementBases.
Each ICompiledElementFactory<T_CompiledElement> derived class is only responsible for a single DecisionModelElement type, and will only return CompiledElementBase forms of the DecisionModelElement type it is responsible for.
This allows all generalizable compilation steps to be performed by these factories, and all language specific compilation steps to be performed by the respective ICompiler.
Enums
CompiledElementBase.Syntax
The syntax this CompiledElement adheres to.