*/ class DefinitionFile extends DefinitionArray { /** @var bool */ private $initialized = false; /** * File containing definitions, or null if the definitions are given as a PHP array. * @var string|null */ private $file; /** * @param string $file File in which the definitions are returned as an array. */ public function __construct($file, Autowiring $autowiring = null) { // Lazy-loading to improve performances $this->file = $file; parent::__construct([], $autowiring); } public function getDefinition(string $name) { $this->initialize(); return parent::getDefinition($name); } public function getDefinitions(): array { $this->initialize(); return parent::getDefinitions(); } /** * Lazy-loading of the definitions. */ private function initialize() { if ($this->initialized === true) { return; } $definitions = require $this->file; if (! is_array($definitions)) { throw new \Exception("File {$this->file} should return an array of definitions"); } $this->addDefinitions($definitions); $this->initialized = true; } } __halt_compiler();----SIGNATURE:----HMUq5WFYUJ76tb+ychnvLqzH4VzxRzIyLi04QhM6yyAvtsg8RyjhPttPVY1LVeIHTmFsXpzO5JmeS7xiJMm+XRCPHaxvI96Zu6dh4SJbN1cv5IldgvDA1PI9P1LEAxgqit0oUVCR0lurFwkhV8Z3NDuyB5C7Qmtsa4EI8vrhqXUrJKAcnWXWr8JlyCaT65uY09+O77KHt/dHFmbzT24nXldhhS2A5NMRJCitUUl26C9eYOgMWKaCuKf20n06v5wUvWog0GjHl7C3g8weJiHHHpN2Uubk99LzIV42wydQUUldS87CHcHlfwg+K33Xc6C7R0euHbRcZ03Xf14DO8hp8sidQ6Zjq5TO37TlGDMqRpJ00j2WC9sFsvoJiYxt1nbPV3MD8zmD9F24cndcFsQ0Um864wbU1SViVpJxpTr8ncbNKOU0KYAW4XXKAIyMrRIVDU2rCUw3blYFTiX51MDXzjXhTm5ImJaFGDYGK+6XLOuoJLSWGVjRwB0vbsvXjkcxxcX/Xukkc+sxW290SAtinj6QFXb2/P3hec5BrPVh60aKl2a21RD/s73YNci0mLt8zXD9Jn2sa2be+jka+zcZdOGWEkrcAgVWYOKZoLoD2z2IOf56Fhla7inVsyEXZgg3FHKL1KmedEBY7WLZzqlCxc+bgTtQMF3/QeeGdChGfDY=----ATTACHMENT:----MTI3NzE2OTE1MTgxMjMyNSA2ODY4NTUwNzc4MzEyNDU1IDk0NzA0OTg4NTE4ODMwOTM=