/** * Get appropriate parser * * @param File $file * @return \Engine\IO\File\Parser\Contract * @throws InvalidContentException */ public static function getParser(File $file) { foreach (self::$providers as $provider => $allowedExtensions) { if (in_array($file->getExt(), $allowedExtensions)) { return Engine::newInstance($provider); } } return Engine::newInstance(Factory::class); }
public function makeRegisters() { // TODO: Implement makeRegisters() method. if (count($this->registers)) { $di = di(); foreach ($this->registers as $i => $name) { if (is_string($name)) { $register = Engine::newInstance($name); if ($register instanceof ServiceRegister) { $register->setDI($di); $this->registers[$i] = $register; } else { throw new InvalidInstanceException("{$name} must implement " . ServiceRegister::class); } } } } return $this; }