* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Config\Loader; /** * LoaderInterface is the interface implemented by all loader classes. * * @author Fabien Potencier */ interface LoaderInterface { /** * Loads a resource. * * @return mixed * * @throws \Exception If something went wrong */ public function load(mixed $resource, ?string $type = null); /** * Returns whether this class supports the given resource. * * @param mixed $resource A resource * * @return bool */ public function supports(mixed $resource, ?string $type = null); /** * Gets the loader resolver. * * @return LoaderResolverInterface */ public function getResolver(); /** * Sets the loader resolver. * * @return void */ public function setResolver(LoaderResolverInterface $resolver); }