Show / Hide Table of Contents

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.

In this article
Back to top Copyright © 2025 Quantellia LLC.    Version 2.0.0 Revision 399     Last Updated 11/16/2025    DRAFT DOCUMENTATION. SUBJECT TO CHANGE