*/ class StringDefinition implements Definition, SelfResolvingDefinition { /** * Entry name. * @var string */ private $name = ''; /** @var string */ private $expression; public function __construct(string $expression) { $this->expression = $expression; } public function getName(): string { return $this->name; } public function setName(string $name) { $this->name = $name; } public function getExpression(): string { return $this->expression; } public function resolve(ContainerInterface $container): string { return self::resolveExpression($this->name, $this->expression, $container); } public function isResolvable(ContainerInterface $container): bool { return true; } public function replaceNestedDefinitions(callable $replacer) { // no nested definitions } public function __toString() { return $this->expression; } /** * Resolve a string expression. */ public static function resolveExpression( string $entryName, string $expression, ContainerInterface $container, ): string { $callback = function (array $matches) use ($entryName, $container) { try { return $container->get($matches[1]); } catch (NotFoundExceptionInterface $e) { throw new DependencyException(sprintf( "Error while parsing string expression for entry '%s': %s", $entryName, $e->getMessage() ), 0, $e); } }; $result = preg_replace_callback('#\{([^\{\}]+)\}#', $callback, $expression); if ($result === null) { throw new \RuntimeException(sprintf('An unknown error occurred while parsing the string definition: \'%s\'', $expression)); } return $result; } } __halt_compiler();----SIGNATURE:----ewm/T4oKAJEqFg20uStEkwB/zrGo6vF73U0q1AJNJRfi06b5weCBj+JguGSIxJrxN5t+EzK0iJfqTUywvGamU0b1Sesfc5gB0cTO8Y69LPWH/ciUBWuwpPOLEVlJSaQeI1VjsMJn1WClCt5nkYE/oCH5W9pyoV/Voe++V90oZN7DSL9RSB+ZjO/T8C0tDp40eSN2ofZrgh8TieRpYE+zA9c2nB1dYNRoa2GhvRPgQbmPjVV21jyYlhKKvYiUS+8Ej6v0il/T6bqXg9eofSvgIJQWzMOQWxdWFboIUyRFAa27VKhnwwFSUm3KYL7l72lD/VAhCwBeTo0zQSpauK4Vq2d5SxKeLpTbNRtNeK+TfgWxS35f2PAC+aRNJKpgn9Mkcvbtc5Xs7ob/t1kEqGZT35gybeMhyBKr9trA1vWN7dwlj9u9yWVwoaPwLKjr39fTk+5/wRGw2UwKaf7TGh1h6p2Zji0YOEbGrz/JqfcRm1kSZX0MdRaIuyxzv7r2pbE9B4HCRCKhb9dFtfgu49H99nfjz+BHTYNmSv7k9ZMJSq7/8d09YSdx+87LNaBjz9d18yrGjYNrFMHK9FAf60dfnDsQZUgLdvEWivoV8TMXD6+hy+/cNeHXhxL6HQJAMUO1DUSgZ4kYZXg1TWt67boDDnFnarBxOBACr7NOf/MTRDE=----ATTACHMENT:----NzgxMDQ3MTMwODI3NTQ3MSA5MzU3OTg2MTAxNjc3Nzg5IDQ5MzQ4MzUzNTU3NzU0NTc=