Security update to Drupal 8.4.6
[yaffs-website] / vendor / twig / twig / lib / Twig / CacheInterface.php
1 <?php
2
3 /*
4  * This file is part of Twig.
5  *
6  * (c) Fabien Potencier
7  *
8  * For the full copyright and license information, please view the LICENSE
9  * file that was distributed with this source code.
10  */
11
12 /**
13  * Interface implemented by cache classes.
14  *
15  * It is highly recommended to always store templates on the filesystem to
16  * benefit from the PHP opcode cache. This interface is mostly useful if you
17  * need to implement a custom strategy for storing templates on the filesystem.
18  *
19  * @author Andrew Tch <andrew@noop.lv>
20  */
21 interface Twig_CacheInterface
22 {
23     /**
24      * Generates a cache key for the given template class name.
25      *
26      * @param string $name      The template name
27      * @param string $className The template class name
28      *
29      * @return string
30      */
31     public function generateKey($name, $className);
32
33     /**
34      * Writes the compiled template to cache.
35      *
36      * @param string $key     The cache key
37      * @param string $content The template representation as a PHP class
38      */
39     public function write($key, $content);
40
41     /**
42      * Loads a template from the cache.
43      *
44      * @param string $key The cache key
45      */
46     public function load($key);
47
48     /**
49      * Returns the modification timestamp of a key.
50      *
51      * @param string $key The cache key
52      *
53      * @return int
54      */
55     public function getTimestamp($key);
56 }
57
58 class_alias('Twig_CacheInterface', 'Twig\Cache\CacheInterface', false);