aboutsummaryrefslogtreecommitdiffstats
path: root/public/system/library/template/Twig/CacheInterface.php
diff options
context:
space:
mode:
Diffstat (limited to 'public/system/library/template/Twig/CacheInterface.php')
-rw-r--r--public/system/library/template/Twig/CacheInterface.php56
1 files changed, 56 insertions, 0 deletions
diff --git a/public/system/library/template/Twig/CacheInterface.php b/public/system/library/template/Twig/CacheInterface.php
new file mode 100644
index 0000000..9b17e0f
--- /dev/null
+++ b/public/system/library/template/Twig/CacheInterface.php
@@ -0,0 +1,56 @@
+<?php
+
+/*
+ * This file is part of Twig.
+ *
+ * (c) 2015 Fabien Potencier
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+/**
+ * Interface implemented by cache classes.
+ *
+ * It is highly recommended to always store templates on the filesystem to
+ * benefit from the PHP opcode cache. This interface is mostly useful if you
+ * need to implement a custom strategy for storing templates on the filesystem.
+ *
+ * @author Andrew Tch <andrew@noop.lv>
+ */
+interface Twig_CacheInterface
+{
+ /**
+ * Generates a cache key for the given template class name.
+ *
+ * @param string $name The template name
+ * @param string $className The template class name
+ *
+ * @return string
+ */
+ public function generateKey($name, $className);
+
+ /**
+ * Writes the compiled template to cache.
+ *
+ * @param string $key The cache key
+ * @param string $content The template representation as a PHP class
+ */
+ public function write($key, $content);
+
+ /**
+ * Loads a template from the cache.
+ *
+ * @param string $key The cache key
+ */
+ public function load($key);
+
+ /**
+ * Returns the modification timestamp of a key.
+ *
+ * @param string $key The cache key
+ *
+ * @return int
+ */
+ public function getTimestamp($key);
+}