49 lines
1.1 KiB
Plaintext
49 lines
1.1 KiB
Plaintext
|
/**
|
||
|
* Registers the service provider with a DI container.
|
||
|
*
|
||
|
* @param Container $container The DI container.
|
||
|
*
|
||
|
* @return void
|
||
|
* @since 3.2.0
|
||
|
*/
|
||
|
public function register(Container $container)
|
||
|
{
|
||
|
$container->alias(CompilerLanguage::class, 'Language')
|
||
|
->share('Language', [$this, 'getLanguage'], true);
|
||
|
|
||
|
$container->alias(Extractor::class, 'Language.Extractor')
|
||
|
->share('Language.Extractor', [$this, 'getLanguageExtractor'], true);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Get the Compiler Language
|
||
|
*
|
||
|
* @param Container $container The DI container.
|
||
|
*
|
||
|
* @return CompilerLanguage
|
||
|
* @since 3.2.0
|
||
|
*/
|
||
|
public function getLanguage(Container $container): CompilerLanguage
|
||
|
{
|
||
|
return new CompilerLanguage(
|
||
|
$container->get('Config')
|
||
|
);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Get the Compiler Language Extractor
|
||
|
*
|
||
|
* @param Container $container The DI container.
|
||
|
*
|
||
|
* @return Extractor
|
||
|
* @since 3.2.0
|
||
|
*/
|
||
|
public function getLanguageExtractor(Container $container): Extractor
|
||
|
{
|
||
|
return new Extractor(
|
||
|
$container->get('Config'),
|
||
|
$container->get('Language'),
|
||
|
$container->get('Placeholder')
|
||
|
);
|
||
|
}
|