*/ class ArrayResolver implements DefinitionResolver { /** @var DefinitionResolver */ private $definitionResolver; /** * @param DefinitionResolver $definitionResolver Used to resolve nested definitions. */ public function __construct(DefinitionResolver $definitionResolver) { $this->definitionResolver = $definitionResolver; } /** * Resolve an array definition to a value. * * An array definition can contain simple values or references to other entries. * * @param ArrayDefinition $definition */ public function resolve(Definition $definition, array $parameters = []): array { $values = $definition->getValues(); // Resolve nested definitions array_walk_recursive($values, function (& $value, $key) use ($definition) { if ($value instanceof Definition) { $value = $this->resolveDefinition($value, $definition, $key); } }); return $values; } public function isResolvable(Definition $definition, array $parameters = []): bool { return true; } private function resolveDefinition(Definition $value, ArrayDefinition $definition, $key) { try { return $this->definitionResolver->resolve($value); } catch (DependencyException $e) { throw $e; } catch (Exception $e) { throw new DependencyException(sprintf( 'Error while resolving %s[%s]. %s', $definition->getName(), $key, $e->getMessage() ), 0, $e); } } } __halt_compiler();----SIGNATURE:----IGgNLkfiqiPbBNYwHhD5mXQvtCZIdb7YChs3VBKGEzGRfm/5+srXgkQQjYE95J7mOUNPFODirh9B8JeFmkZeMPliAnVi72icovvUgqUq6DmAkOdX6KHvjxOnWLKw3hQu+t0eYNz9cU9stmHJmv+TCmh7uKmEepVLfrSBiNlS5mxGQfCfA7/LYCvYMSyABDfKfHAewVj8wLZDAzW92+hd0jwSGK7PF9FpU7EwQnPR1MatOcAj9ffWagBk7cJ4E4aCMy2sYlpt4IzTBe08iKhrr8DH7MT0hRSv4E+xEsC9ELX2YOuPnfMslYQiLjgNZC/sEMc7w80wS51fHD7RzaY5DxvVlKFK4Iv9kEB2LtFlGh0EMBxZ3xcxWz8ApjMB6TFUxeGsm/YiykCk1bFV8qCxcesNnpfKevfT7j0YyxqteS4m5yrJly28Cmpb58aCJagFLxt6mAH9bgC/kmQUfa/I3pznxWfJHjsjPJSIbdKZEug4tmxHSTa0jgBgRdDzcktMwe2yJdMThEMgCyfRWqL+OzYzyWwFkKa2xGoOlHpfFVooIFacroMy0eUxlH8xUXUl2LoJGvZ8lGK5O6lU+zRjs/mLzp/8EHVBq1IUjRdzi+nxMHEG0+TZmCBz/vurIrn+jlcXLPAz+hInB3GJ7WMtaZpgGMlzbKfvPDOeSzel0kI=----ATTACHMENT:----NzQyNDgwMTkxMjE2MjI2OCA2NzQyNDQzMTM3MTU3OTMyIDMyNDAyMDQ0NTU2MTk5Mw==