Assembly: OptimaJet.Workflow.Core

Interface IExternalCompiler

OptimaJet.Workflow.Core.CodeActions.IExternalCompiler

Defines a compiler that replaces the built-in Roslyn compiler for generated code actions and returns them in a form that the workflow runtime can invoke.

public interface IExternalCompiler

Methods

CodeActionsInvoker Compile(List<CodeForCompillation> codeItems, List<string> referenceLocations, bool isDebug, bool ignoreNotCompilled, out Dictionary<string, string> compileErrors) #
Compiles generated code-action sources and creates an invoker for executing the resulting actions, conditions, and rules.

Parameters

Name
Type
Description
codeItems
List<CodeForCompillation>
The generated compilation units, their source definitions, and the offsets required to map compilation diagnostics back to the original code-action bodies.
referenceLocations
List<String>
The locations of assemblies registered with CodeActionsCompiller that the generated code can reference.
isDebug
Boolean
The value of CodeActionsCompiller.DebugMode indicating whether debug compilation is requested.
ignoreNotCompilled
Boolean
true to omit individual code actions that fail to compile and return the successfully compiled actions; false to report the compilation as failed if any code action is invalid.
compileErrors
Dictionary<String, String>
When this method returns, contains compilation diagnostics for omitted code actions. Each key identifies a code action by its CodeActionDefinition.Type and CodeActionDefinition.Name; the dictionary is empty when every code action was compiled.

Returns

Type
Description
CodeActionsInvoker
A CodeActionsInvoker that can execute the successfully compiled code actions by their logical names.