class PassConfig

Compiler Pass Configuration.

This class has a default configuration embedded.

Constants

TYPE_AFTER_REMOVING

TYPE_BEFORE_OPTIMIZATION

TYPE_BEFORE_REMOVING

TYPE_OPTIMIZE

TYPE_REMOVE

Methods

__construct()

No description

getPasses()

Returns all passes in order to be processed.

addPass(CompilerPassInterface $pass, string $type = self::TYPE_BEFORE_OPTIMIZATION, int $priority = 0)

Adds a pass.

getAfterRemovingPasses()

Gets all passes for the AfterRemoving pass.

getBeforeOptimizationPasses()

Gets all passes for the BeforeOptimization pass.

getBeforeRemovingPasses()

Gets all passes for the BeforeRemoving pass.

getOptimizationPasses()

Gets all passes for the Optimization pass.

getRemovingPasses()

Gets all passes for the Removing pass.

getMergePass()

Gets the Merge pass.

setMergePass(CompilerPassInterface $pass)

No description

setAfterRemovingPasses(array $passes)

Sets the AfterRemoving passes.

setBeforeOptimizationPasses(array $passes)

Sets the BeforeOptimization passes.

setBeforeRemovingPasses(array $passes)

Sets the BeforeRemoving passes.

setOptimizationPasses(array $passes)

Sets the Optimization passes.

setRemovingPasses(array $passes)

Sets the Removing passes.

Details

__construct()

CompilerPassInterface[] getPasses()

Returns all passes in order to be processed.

Return Value

CompilerPassInterface[]

addPass(CompilerPassInterface $pass, string $type = self::TYPE_BEFORE_OPTIMIZATION, int $priority = 0)

Adds a pass.

Parameters

CompilerPassInterface $pass A Compiler pass
string $type The pass type
int $priority Used to sort the passes

Exceptions

InvalidArgumentException when a pass type doesn't exist

CompilerPassInterface[] getAfterRemovingPasses()

Gets all passes for the AfterRemoving pass.

Return Value

CompilerPassInterface[]

CompilerPassInterface[] getBeforeOptimizationPasses()

Gets all passes for the BeforeOptimization pass.

Return Value

CompilerPassInterface[]

CompilerPassInterface[] getBeforeRemovingPasses()

Gets all passes for the BeforeRemoving pass.

Return Value

CompilerPassInterface[]

CompilerPassInterface[] getOptimizationPasses()

Gets all passes for the Optimization pass.

Return Value

CompilerPassInterface[]

CompilerPassInterface[] getRemovingPasses()

Gets all passes for the Removing pass.

Return Value

CompilerPassInterface[]

CompilerPassInterface getMergePass()

Gets the Merge pass.

Return Value

CompilerPassInterface

setMergePass(CompilerPassInterface $pass)

Parameters

CompilerPassInterface $pass

setAfterRemovingPasses(array $passes)

Sets the AfterRemoving passes.

Parameters

array $passes

setBeforeOptimizationPasses(array $passes)

Sets the BeforeOptimization passes.

Parameters

array $passes

setBeforeRemovingPasses(array $passes)

Sets the BeforeRemoving passes.

Parameters

array $passes

setOptimizationPasses(array $passes)

Sets the Optimization passes.

Parameters

array $passes

setRemovingPasses(array $passes)

Sets the Removing passes.

Parameters

array $passes