Skip to main content


class Ens.Rule.Compiler extends %Library.RegisteredObject

Legacy: Provided the ability to compile persistent rule definitions into routines.

Property Inventory

Method Inventory


property Code as %GlobalCharacterStream [ Transient ];
This holds the generated code
Property methods: CodeDelete(), CodeGet(), CodeGetObject(), CodeGetObjectId(), CodeGetSwizzled(), CodeIsValid(), CodeNewObject(), CodeOid(), CodeOpen(), CodeSet(), CodeSetObject(), CodeSetObjectId(), CodeUnSwizzle()


classmethod AllocateRoutineName() as %String
Returns a routine name in which compiled rule can be placed.
classmethod CompileRule(pRuleDef As RuleDefinition, pRoutineName As %String) as %Status
Generate executable code for the given rule definition and store it into routine pRoutineName.
classmethod DeleteRoutine(pName As %String) as %Status
Delete the given routine from the rule cache
classmethod MakeRoutineName(id As %Integer) as %String
Return a rule cache routine name Try to use values that collate
classmethod PurgeRuleCache() as %Status
Delete all routines from Rule Cache

Inherited Members

Inherited Methods

FeedbackOpens in a new tab