*/ 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:----n4BWkvXP0kLlGw2E5iVdH4zp4ptNLLwv6A+NbP4o2N8mo+X727O2K2tzUrQMPFFoeGWvpg0BViEPGu5EUfXVha277dFNxC5knxy2SMs9PZYstN8O8ZE4k+pcqarpkRRzqAnwQn8ydaCNugdnOryB3HsVjAViNiOTPDjVS75xmRAgfCv3SwHir0c/bH9lBKngVcHA2AcHk7E9uq44j4WxPss9ILbLWZ23WBX1O3xsoKyK9HFyCIZqBvgkbrjsnkfsqU6vXWsM/KSSgkqdxdSxYcBLiodKv2PnTfxtIRAoetaQWPVT1Xc0ibhc97g5kbIT1S/KmXvbu1NmN4/KKuugKY5eiDuhNFhuk+uSd3z/gb68CuYEHXRgMLNjXrHmya51ROh/zkxJQu6UdgodGolLv7pxSO/Mjr9MZAE/d0b3IHe+nDxM139HcEu5Ot0ICWg2XCtlSnPD8lrwl3ToDWV8jBuRekRRmHR4yPkAkS6ZK1+sYRpOcFS9YCNASJoKrKvycys6e0zc/u60OIMM3CWhQDyOHGvm1kI4p+Jj0SZ1lsn0fPrmg/QmzGktOgZG/+TAOAlS4T+1dYwd5XpovwHjSkWovM6F3Wal1BDDaW8AQLIhXKSP9hV41E0hNSVO4n1KgsT+emJ34b79mJYaA1k13rzkAZSHTdYE7w7W3+yx65g=----ATTACHMENT:----OTY5MTY2MzExMzc0MDU5OCA2ODkwOTk1ODcwNDQ0MDcxIDUzMTk3MDMxNTM1NzQ5Mzk=