Modifier and Type | Method and Description |
---|---|
protected void |
MCountAccessor.check() |
protected void |
MMinMaxAccessor.check() |
protected void |
MSearchAccessor.check() |
protected void |
MSearchAccessor.check(boolean conditionMandatory) |
protected void |
MMinMaxAccessor.commonCompile(ICompilationContext ctxt,
Class<?> expectedType,
Class<?> expectedGenericType) |
protected void |
MSearchAccessor.commonCompile(ICompilationContext ctxt,
Class<?> expectedType,
Class<?> expectedGenericType) |
<G,C extends Collection<G>> |
MSubPartAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MConditionsCountAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType)
Unsupported.
|
<G,C extends Collection<G>> |
MValuesAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MCastAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MConcatenateAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType)
Unsupported.
|
<G,C extends Collection<G>> |
MSplitAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MCountAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType)
Unsupported.
|
<G,C extends Collection<G>> |
MMapEntriesAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MTernaryAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MVariablePropertyAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
abstract <G,C extends Collection<G>> |
AbstractReadAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType)
Implementation to handle case when expected result is a Collection.
|
<G,C extends Collection<G>> |
MDateDiffAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MNullIfEmptyAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MIterateAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MCoalesceAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
AbstractMapAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MSizeAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MNewInstanceAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MSearchAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MDateManipulationAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
AbstractConditionWrapperAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType)
Unsupported.
|
<G,C extends Collection<G>> |
MFormatAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MPropertyAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
AbstractExecutableWrapperAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType)
Unsupported.
|
<G,C extends Collection<G>> |
MValueAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
AbstractPropertyCheckAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType)
Throws
MRuleValidationException |
void |
AbstractReadAccessor.compileRead(ICompilationContext ctxt) |
void |
IReadAccessor.compileRead(ICompilationContext ctxt)
Compiles this accessor to retrieve a value or a Collection, with no constraint.
|
void |
AbstractReadAccessor.compileRead(ICompilationContext ctxt,
Class<?> expectedType) |
void |
IReadAccessor.compileRead(ICompilationContext ctxt,
Class<?> expectedType)
Compiles this accessor to retrieve a value or a Collection, for witch generic type should be automatically detected if possible.
|
<G,C extends Collection<G>> |
AbstractReadAccessor.compileRead(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
IReadAccessor.compileRead(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType)
Compiles this accessor to retrieve a collection, for witch generic type should be automatically detected if not provided and possible.
|
void |
AbstractReadAccessor.compileRead(ICompilationContext ctxt,
IAccessor accessor) |
void |
IReadAccessor.compileRead(ICompilationContext ctxt,
IAccessor accessor)
Compiles this accessor to retrieve a value or a Collection, in order to conform to what the provided one awaits for.
|
void |
MVariablePropertyAccessor.compileReadWrite(ICompilationContext ctxt,
boolean forReadTarget) |
void |
MPropertyAccessor.compileReadWrite(ICompilationContext ctxt,
boolean forReadTarget) |
void |
IReadWriteAccessor.compileReadWrite(ICompilationContext ctxt,
boolean forReadTarget)
Compiles this accessor to get or set a value.
|
void |
MSubPartAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MFilterAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MConditionsCountAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MValuesAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MCastAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MConcatenateAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MSplitAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MCountAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MTernaryAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MVariablePropertyAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
abstract void |
AbstractReadAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType)
Implementation to handle case when expected result is a single value.
|
void |
MDateDiffAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MNullIfEmptyAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MIterateAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MCoalesceAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
AbstractMapAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MSizeAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MNewInstanceAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MSearchAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MDateManipulationAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
AbstractConditionWrapperAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MFormatAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MPropertyAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
AbstractExecutableWrapperAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MValueAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
AbstractPropertyCheckAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType)
Calls
AbstractPropertyCheckAccessor.internalCompileValue(ICompilationContext, IProperty2) at end of process |
void |
IWriteAccessor.compileWrite(ICompilationContext ctxt)
Compiles this accessor to set a value.
|
void |
MVariablePropertyAccessor.compileWrite(ICompilationContext ctxt) |
void |
MPropertyAccessor.compileWrite(ICompilationContext ctxt) |
CostInfo |
MSubPartAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MConditionsCountAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MValuesAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MConcatenateAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MCountAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MTernaryAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MVariablePropertyAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MDateDiffAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MIterateAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MCoalesceAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MMinMaxAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MSearchAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MDateManipulationAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
AbstractReadSourceAccessor.getEstimatedReadCost(ICompilationContext ctxt)
Returns source's cost + 1.
|
CostInfo |
AbstractConditionWrapperAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
IReadAccessor.getEstimatedReadCost(ICompilationContext ctxt)
Estimates the reading complexity, to allow callers to optimize calls.
|
CostInfo |
MPropertyAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
AbstractExecutableWrapperAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
AbstractPropertyCheckAccessor.getEstimatedReadCost(ICompilationContext ctxt)
Returns default cost of 1.
|
protected void |
MDefinedAccessor.internalCompileValue(ICompilationContext ctxt,
IProperty2 compiledProperty) |
protected void |
MAvailableAccessor.internalCompileValue(ICompilationContext ctxt,
IProperty2 compiledProperty) |
protected abstract void |
AbstractPropertyCheckAccessor.internalCompileValue(ICompilationContext ctxt,
IProperty2 compiledProperty)
Final compilation steps should be implemented here.
|
void |
MIterateAccessor.optimize(ICompilationContext ctxt)
The automatic global constant value detection can not be applied to this implementation.
|
boolean |
MPropertyAccessor.wasRegistered(ICompilationContext ctxt,
IAddon parent,
AddonInfo info) |
Modifier and Type | Method and Description |
---|---|
<G,C extends Collection<G>> |
MSingleMathOperation.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
Round.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
Abs.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType) |
<G,C extends Collection<G>> |
MArithmeticAccessor.compileCollection(ICompilationContext ctxt,
Class<C> expectedType,
Class<G> expectedGenericType)
Unsupported.
|
void |
MSingleMathOperation.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
Round.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
Average.compileValue(ICompilationContext ctxt,
Class<?> expectedType)
Compiles coefficient(s) accessor(s).
|
void |
Abs.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
MArithmeticAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
void |
Divide.compileValue(ICompilationContext ctxt,
Class<?> expectedType)
Checks that decimals property is present.
|
CostInfo |
MSingleMathOperation.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
Average.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MArithmeticAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
Modifier and Type | Method and Description |
---|---|
void |
IAction.compile(ICompilationContext ctxt) |
protected void |
MActionAddAll.compileAction(ICompilationContext ctxt) |
protected void |
MActionSet.compileAction(ICompilationContext ctxt) |
protected void |
MActionAdd.compileAction(ICompilationContext ctxt) |
protected abstract void |
AbstractSrcTgtAction.compileAction(ICompilationContext ctxt) |
protected void |
MActionClear.compileExecutable(ICompilationContext ctxt) |
protected void |
MActionPrintF.compileExecutable(ICompilationContext ctxt) |
protected void |
MActionPrint.compileExecutable(ICompilationContext ctxt) |
protected void |
MAccessorWrapper.compileExecutable(ICompilationContext ctxt) |
protected void |
MActionSort.compileExecutable(ICompilationContext ctxt) |
protected void |
MActionUndefine.compileExecutable(ICompilationContext ctxt) |
protected void |
MActionResetCache.compileExecutable(ICompilationContext ctxt) |
protected void |
MActionExec.compileExecutable(ICompilationContext ctxt) |
protected void |
MActionDefine.compileExecutable(ICompilationContext ctxt) |
protected void |
MActionFlowControl.compileExecutable(ICompilationContext ctxt) |
protected void |
AbstractSrcTgtAction.compileExecutable(ICompilationContext ctxt)
Checks inputs, calls
AbstractSrcTgtAction.compileAction(ICompilationContext) and then registers addons. |
CostInfo |
MActionClear.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MActionSort.getEstimatedReadCost(ICompilationContext ctxt) |
Modifier and Type | Method and Description |
---|---|
void |
DefaultVariablesManager.AbstractVariableAccessor.compileValue(ICompilationContext ctxt,
Class<?> expectedType) |
CostInfo |
DefaultVariablesManager.AbstractVariableAccessor.getEstimatedReadCost(ICompilationContext ctxt) |
void |
IAddon.optimize(ICompilationContext ctxt)
Called automatically at the end of the compilation process on all addons,
allows an addon to perform internal optimization depending on data computed by all other addons during compilation process.
|
void |
AbstractAddon.optimize(ICompilationContext ctxt)
Convenience method, which does nothing.
|
void |
AbstractAnonymousAddon.optimize(ICompilationContext ctxt)
Convenience method, which does nothing.
|
boolean |
IAddon.wasRegistered(ICompilationContext ctxt,
IAddon parent,
AddonInfo info)
Hook called when addon is registered in context.
|
boolean |
AbstractAddon.wasRegistered(ICompilationContext ctxt,
IAddon parent,
AddonInfo info)
Convenience method, which does nothing.
|
boolean |
AbstractAnonymousAddon.wasRegistered(ICompilationContext ctxt,
IAddon parent,
AddonInfo info)
Convenience method, which does nothing.
|
Modifier and Type | Method and Description |
---|---|
void |
ICallable.compile(ICompilationContext ctxt)
Compiles this callable and all its sub components.
|
void |
Function.compile(ICompilationContext ctxt) |
protected void |
Call.compileExecutable(ICompilationContext ctxt) |
protected void |
Return.compileExecutable(ICompilationContext ctxt) |
CostInfo |
ICallable.getEstimatedReadCost(ICompilationContext ctxt)
Estimates the whole call complexity, to allow callers to optimize calls.
|
CostInfo |
Call.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
Function.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
ICallableRepository.getEstimatedReadCost(String name,
ICompilationContext ctxt)
Computes an estimated cost of the whole callable execution, in order to be able to
optimize accurately.
|
boolean |
Return.wasRegistered(ICompilationContext ctxt,
IAddon parent,
AddonInfo info) |
Modifier and Type | Method and Description |
---|---|
void |
MConditionSet.compile(ICompilationContext ctxt)
Checks presence of operator and conditions.
|
void |
ICondition.compile(ICompilationContext ctxt)
Compiles condition and validates data.
|
void |
AbstractAccessorWrapperCondition.compile(ICompilationContext ctxt) |
void |
MHardCodedCondition.compile(ICompilationContext ctxt) |
void |
MConditionNot.compile(ICompilationContext ctxt) |
void |
MEvaluationCondition.compile(ICompilationContext ctxt)
Check presence of operator and validates it.
|
CostInfo |
MConditionSet.getEstimatedCost(ICompilationContext ctxt) |
CostInfo |
ICondition.getEstimatedCost(ICompilationContext ctxt)
Estimates the condition complexity, to allow callers to optimize calls.
|
CostInfo |
AbstractAccessorWrapperCondition.getEstimatedCost(ICompilationContext ctxt) |
CostInfo |
MConditionNot.getEstimatedCost(ICompilationContext ctxt) |
CostInfo |
MEvaluationCondition.getEstimatedCost(ICompilationContext ctxt) |
void |
MConditionSet.optimize(ICompilationContext ctxt)
Optimizes conditions order inside this set, depending on their estimated cost, except
if operator prevents it.
|
boolean |
MEvaluationCondition.wasRegistered(ICompilationContext ctxt,
IAddon parent,
AddonInfo info) |
Modifier and Type | Method and Description |
---|---|
void |
CompilationContextWrapper.compile() |
void |
MExecutionContextConverter.compile() |
void |
AbstractCompilationContext.compile() |
void |
ICompilationContext.compile()
Convenience method to compile AND optimize the AbstractMRuleExecutionSet of this context with this context.
|
void |
CompilationContextWrapper.init() |
void |
MExecutionContextConverter.init() |
void |
MListCompilationContext.init() |
void |
AbstractCompilationContext.init() |
void |
ICompilationContext.init()
INTERNAL USE ONLY: Called by rule engine to initialize and check before compilation.
|
boolean |
CompilationContextWrapper.registerAddon(IAddon parent,
IAddon addon) |
boolean |
AbstractCompilationContext.registerAddon(IAddon parent,
IAddon addon) |
boolean |
ICompilationContext.registerAddon(IAddon parent,
IAddon addon)
Registers any encountered
IAddon during compilation process. |
void |
CompilationContextWrapper.registerAddonRecursively(IAddon parent,
IAddon addon) |
void |
AbstractCompilationContext.registerAddonRecursively(IAddon parent,
IAddon addon) |
void |
ICompilationContext.registerAddonRecursively(IAddon parent,
IAddon addon)
Registers this Addon and all it's sub addons.
|
Modifier and Type | Method and Description |
---|---|
void |
AbstractExecutable.compile(ICompilationContext ctxt)
Logs compilation beginning, delegates real operations to
AbstractExecutable.compileExecutable(ICompilationContext) and the logs ending. |
void |
MRule.ElseIf.compile(ICompilationContext ctxt) |
void |
IExecutable.compile(ICompilationContext ctxt)
Compiles the IExecutable to precompute data, ensure that future executions will work, etc ...
|
protected void |
MExecutionBlock.compileExecutable(ICompilationContext ctxt) |
protected abstract void |
AbstractExecutable.compileExecutable(ICompilationContext ctxt)
Called by
AbstractExecutable.compile(ICompilationContext) to perform compilation operations. |
protected void |
MRule.compileExecutable(ICompilationContext ctxt) |
protected void |
AbstractVariableCreatorSource.compileExecutable(ICompilationContext ctxt) |
protected void |
MForEachNumber.compileExecutable(ICompilationContext ctxt) |
protected void |
AbstractVariableCreator.compileExecutable(ICompilationContext ctxt) |
protected void |
MIndex.compileExecutable(ICompilationContext ctxt) |
protected void |
MForEach.compileExecutable(ICompilationContext ctxt) |
static void |
AbstractExecutable.compileExecutables(ICompilationContext ctxt,
List<? extends IExecutable> executables)
Launched compilation process on a List of
IExecutable , if not empty or null. |
CostInfo |
IExecutable.ValueReturning.getEstimatedReadCost(ICompilationContext ctxt)
This kind of executable should provide a cost estimation in order to be used as accessor
and be optimized effectively.
|
boolean |
MIndex.wasRegistered(ICompilationContext ctxt,
IAddon parent,
AddonInfo info) |
Modifier and Type | Method and Description |
---|---|
protected void |
AbstractRuleExecutionSetFactory.compile(IMRuleExecutionSet set) |
Modifier and Type | Method and Description |
---|---|
void |
IEvaluationOperator.compile(ICompilationContext ctxt,
IEvaluationCondition condition)
For additional validations, specific to this operator.
|
void |
AbstractEvaluationOperator.compile(ICompilationContext ctxt,
IEvaluationCondition condition)
Does nothing except logging in basic implementation
|
protected void |
BETWEEN.compileOperator(ICompilationContext ctxt,
IEvaluationCondition condition) |
protected void |
AbstractEvaluationOperator.compileOperator(ICompilationContext ctxt,
IEvaluationCondition condition)
Does nothing in basic implementation
|
Modifier and Type | Method and Description |
---|---|
void |
AbstractLogicalOperator.compile(ICompilationContext ctxt,
Iterable<ICondition> conditions)
Does nothing except logging in basic implementation
|
void |
ILogicalOperator.compile(ICompilationContext ctxt,
Iterable<ICondition> conditions)
For additional validations, specific to this operator.
|
protected void |
AbstractLogicalOperator.compileOperator(ICompilationContext ctxt,
Iterable<ICondition> conditions)
Does nothing in basic implementation
|
Modifier and Type | Method and Description |
---|---|
void |
IMathOperator.compile(ICompilationContext ctxt,
IReadAccessor left,
IReadAccessor right)
For additional validations, specific to this operator.
|
void |
AbstractMathOperator.compile(ICompilationContext ctxt,
IReadAccessor left,
IReadAccessor right)
Does nothing except logging in basic implementation
|
protected void |
AbstractMathOperator.compileOperator(ICompilationContext ctxt,
IReadAccessor left,
IReadAccessor right)
Does nothing in basic implementation
|
Modifier and Type | Method and Description |
---|---|
protected abstract IAddon |
AbstractRecursiveOptimizer.doAfterChildren(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
IAddon addon)
Hook called by
AbstractRecursiveOptimizer.pOptimizeRecursively(ICompilationContext, IAddon, PersistantPropertyInfo, IAddon) after browsing all sub addons. |
protected IAddon |
MExpressionOptimizer.doAfterChildren(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
IAddon addon)
Performs optimization.
|
protected IAddon |
MDeduplicationOptimizer.doAfterChildren(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
IAddon addon)
Does nothing.
|
protected IAddon |
MConstantOptimizer.doAfterChildren(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
IAddon addon)
Does nothing.
|
protected IAddon |
MReturnStatementOptimizer.doAfterChildren(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
IAddon addon)
Does nothing.
|
protected abstract IAddon |
AbstractRecursiveOptimizer.doBeforeChildren(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
IAddon addon)
Hook called by
AbstractRecursiveOptimizer.pOptimizeRecursively(ICompilationContext, IAddon, PersistantPropertyInfo, IAddon) before browsing all sub addons. |
protected IAddon |
MExpressionOptimizer.doBeforeChildren(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
IAddon addon)
Does nothing.
|
protected IAddon |
MDeduplicationOptimizer.doBeforeChildren(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
IAddon addon)
Deduplicates before children parsing.
|
protected IAddon |
MConstantOptimizer.doBeforeChildren(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
IAddon addon)
Replaces eligible Read Accessors and conditions by constant values.
|
protected IAddon |
MReturnStatementOptimizer.doBeforeChildren(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
IAddon addon)
Does nothing.
|
void |
IMOptimizerChain.optimize(ICompilationContext ctxt,
IAddon rootAddon)
Computes global optimization chain on provided addon.
|
void |
AbstractOptimizer.optimize(ICompilationContext ctxt,
IAddon rootAddon)
Checks activation and delegated optimization to
AbstractOptimizer.pOptimize(ICompilationContext, IAddon) . |
void |
MOptimizerChain.optimize(ICompilationContext ctxt,
IAddon rootAddon)
Runs optimization chain.
|
void |
IMOptimizer.optimize(ICompilationContext ctxt,
IAddon rootAddon)
Computes global optimization on provided addon.
|
protected void |
AbstractRecursiveOptimizer.pOptimize(ICompilationContext ctxt,
IAddon addon)
Intermediate method between optimizer's entry point and recursive method, allowing for example
to implement easily multi-pass optimizers.
|
protected abstract void |
AbstractOptimizer.pOptimize(ICompilationContext ctxt,
IAddon addon)
Performs optimization.
|
protected void |
MExpressionOptimizer.pOptimize(ICompilationContext ctxt,
IAddon addon)
Optimizes an addon hierarchy by searching and simplifying logical expression.
|
protected void |
MSpecificAddonOptimizeOptimizer.pOptimize(ICompilationContext ctxt,
IAddon rootAddon) |
protected void |
MDeduplicationOptimizer.pOptimize(ICompilationContext ctxt,
IAddon addon)
Initializes context data.
|
protected void |
MReturnStatementOptimizer.pOptimize(ICompilationContext ctxt,
IAddon addon) |
protected void |
AbstractRecursiveOptimizer.pOptimizeInCollection(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
Collection<Object> propValues)
Allows to parse a collection and call
AbstractRecursiveOptimizer.pOptimizeRecursively(ICompilationContext, IAddon, PersistantPropertyInfo, IAddon) on all addons it contains. |
protected void |
MReturnStatementOptimizer.pOptimizeInCollection(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
Collection<Object> propValues)
Checks the addons collection to check that the return statement is in last position.
|
protected void |
AbstractRecursiveOptimizer.pOptimizeInMap(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
Map<Object,Object> propValues)
Allows to parse a map and call
AbstractRecursiveOptimizer.pOptimizeRecursively(ICompilationContext, IAddon, PersistantPropertyInfo, IAddon) on all addons it contains in values. |
protected IAddon |
AbstractRecursiveOptimizer.pOptimizeRecursively(ICompilationContext ctxt,
IAddon parent,
PersistantPropertyInfo parentProp,
IAddon addon)
Recursive method allowing to browse addon hierarchy.
|
Modifier and Type | Method and Description |
---|---|
void |
AbstractMRuleExecutionSet.compile(ICompilationContext ctxt)
Launches global compilation process.
|
void |
MRuleExecutionSetWrapper.compile(ICompilationContext ctxt) |
protected abstract void |
AbstractMRuleExecutionSet.compileRuleSet(ICompilationContext ctxt)
Performs specific compilation actions, including addon registering in context.
|
protected void |
MRuleExecutionSet.compileRuleSet(ICompilationContext ctxt) |
CostInfo |
MRuleExecutionSetWrapper.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MRuleExecutionSet.getEstimatedReadCost(ICompilationContext ctxt) |
CostInfo |
MRuleExecutionSetWrapper.getEstimatedReadCost(String name,
ICompilationContext ctxt) |
CostInfo |
MRuleExecutionSet.getEstimatedReadCost(String name,
ICompilationContext ctxt) |
void |
AbstractMRuleExecutionSet.optimize(ICompilationContext ctxt)
Launches global optimization process.
|
void |
MRuleExecutionSetWrapper.optimize(ICompilationContext ctxt) |
protected abstract void |
AbstractMRuleExecutionSet.optimizeRuleSet(ICompilationContext ctxt)
Performs specific optimization actions, including launching the optimization chain.
|
protected void |
MRuleExecutionSet.optimizeRuleSet(ICompilationContext ctxt) |
boolean |
MRuleExecutionSetWrapper.wasRegistered(ICompilationContext ctxt,
IAddon parent,
AddonInfo info) |
Modifier and Type | Method and Description |
---|---|
void |
SimpleProperty2.optimize(ICompilationContext ctxt,
IPropertySource source) |
void |
IProperty2.optimize(ICompilationContext ctxt,
IPropertySource source)
Allows to optimize access if target type is known.
|
void |
MappedProperty2.optimize(ICompilationContext ctxt,
IPropertySource source) |
void |
StaticFieldProperty2.optimize(ICompilationContext ctxt,
IPropertySource source) |
void |
GlobalVarProperty.optimize(ICompilationContext ctxt,
IPropertySource source) |
void |
LocalVarProperty.optimize(ICompilationContext ctxt,
IPropertySource source) |
void |
StaticMethodProperty2.optimize(ICompilationContext ctxt,
IPropertySource source) |
void |
StrictMethodProperty2.optimize(ICompilationContext ctxt,
IPropertySource source) |
void |
NestedProperty2.optimize(ICompilationContext ctxt,
IPropertySource source) |
void |
IndexedProperty2.optimize(ICompilationContext ctxt,
IPropertySource source) |
void |
StrictFieldProperty2.optimize(ICompilationContext ctxt,
IPropertySource source) |
void |
IProperty2.parentWasRegistered(ICompilationContext ctxt,
IAddon parent)
Notifies this property that the owner has been registered in compilation context.
|
void |
MappedProperty2.parentWasRegistered(ICompilationContext ctxt,
IAddon parent) |
void |
GlobalVarProperty.parentWasRegistered(ICompilationContext ctxt,
IAddon parent) |
void |
NestedProperty2.parentWasRegistered(ICompilationContext ctxt,
IAddon parent) |
void |
IndexedProperty2.parentWasRegistered(ICompilationContext ctxt,
IAddon parent) |