50 lines
1.1 KiB
PHP
50 lines
1.1 KiB
PHP
<?php
|
|
|
|
/*
|
|
* This file is part of Twig.
|
|
*
|
|
* (c) Fabien Potencier
|
|
*
|
|
* For the full copyright and license information, please view the LICENSE
|
|
* file that was distributed with this source code.
|
|
*/
|
|
|
|
namespace Twig\Loader;
|
|
|
|
use Twig\Error\LoaderError;
|
|
use Twig\Source;
|
|
|
|
/**
|
|
* Interface all loaders must implement.
|
|
*
|
|
* @author Fabien Potencier <fabien@symfony.com>
|
|
*/
|
|
interface LoaderInterface
|
|
{
|
|
/**
|
|
* Returns the source context for a given template logical name.
|
|
*
|
|
* @throws LoaderError When $name is not found
|
|
*/
|
|
public function getSourceContext(string $name): Source;
|
|
|
|
/**
|
|
* Gets the cache key to use for the cache for a given template name.
|
|
*
|
|
* @throws LoaderError When $name is not found
|
|
*/
|
|
public function getCacheKey(string $name): string;
|
|
|
|
/**
|
|
* @param int $time Timestamp of the last modification time of the cached template
|
|
*
|
|
* @throws LoaderError When $name is not found
|
|
*/
|
|
public function isFresh(string $name, int $time): bool;
|
|
|
|
/**
|
|
* @return bool
|
|
*/
|
|
public function exists(string $name);
|
|
}
|