abstract class CompilerExtension

Base class for compiler extensions that hook into the DI container compilation process.

Properties

protected $compiler
protected $name
protected array<string,mixed>|object $config
protected $initialization

Methods

setCompiler(Compiler $compiler, string $name)

No description

setConfig(array|object $config)

Sets the validated configuration for this extension.

array|object
getConfig()

Returns extension configuration.

Schema
getConfigSchema()

Returns configuration schema.

array
validateConfig(array $expected, array|null $config = null, string|null $name = null) deprecated

Checks whether $config contains only $expected items and returns combined array.

array
loadFromFile(string $file)

Reads configuration from file.

void
loadDefinitionsFromConfig(array $configList)

Loads list of service definitions from configuration.

createLoader()

No description

Closure
getInitialization()

Returns the closure whose body is emitted inside the container's initialize() method.

string
prefix(string $id)

Prepend extension name to identifier or service name.

void
loadConfiguration()

Processes extension configuration and registers services. Override in subclasses.

void
beforeCompile()

Adjusts the container before compilation. Override in subclasses.

void
afterCompile(ClassType $class)

Adjusts the generated container class. Override in subclasses.

Details

at line 29
CompilerExtension setCompiler(Compiler $compiler, string $name)

internal  
 

No description

Parameters

Compiler $compiler
string $name

Return Value

CompilerExtension

at line 42
CompilerExtension setConfig(array|object $config)

Sets the validated configuration for this extension.

Parameters

array|object $config

Return Value

CompilerExtension

at line 53
array|object getConfig()

Returns extension configuration.

Return Value

array|object

at line 62
Schema getConfigSchema()

Returns configuration schema.

Return Value

Schema

at line 78
array validateConfig(array $expected, array|null $config = null, string|null $name = null) deprecated

deprecated use getConfigSchema()

Checks whether $config contains only $expected items and returns combined array.

Parameters

array $expected
array|null $config
string|null $name

Return Value

array

Exceptions

InvalidStateException

at line 99
ContainerBuilder getContainerBuilder()

No description

Return Value

ContainerBuilder

at line 109
array loadFromFile(string $file)

Reads configuration from file.

Parameters

string $file

Return Value

array

at line 123
void loadDefinitionsFromConfig(array $configList)

Loads list of service definitions from configuration.

Prefixes its names and replaces @extension with name in definition.

Parameters

array $configList

Return Value

void

at line 135
protected Loader createLoader()

No description

Return Value

Loader

at line 144
Closure getInitialization()

Returns the closure whose body is emitted inside the container's initialize() method.

Return Value

Closure

at line 153
string prefix(string $id)

Prepend extension name to identifier or service name.

Parameters

string $id

Return Value

string

at line 163
void loadConfiguration()

Processes extension configuration and registers services. Override in subclasses.

Return Value

void

at line 172
void beforeCompile()

Adjusts the container before compilation. Override in subclasses.

Return Value

void

at line 181
void afterCompile(ClassType $class)

Adjusts the generated container class. Override in subclasses.

Parameters

ClassType $class

Return Value

void