| <?php |
| |
| namespace Illuminate\Contracts\Cache; |
| |
| use Closure; |
| use Psr\SimpleCache\CacheInterface; |
| |
| interface Repository extends CacheInterface |
| { |
| /** |
| * Retrieve an item from the cache and delete it. |
| * |
| * @param string $key |
| * @param mixed $default |
| * @return mixed |
| */ |
| public function pull($key, $default = null); |
| |
| /** |
| * Store an item in the cache. |
| * |
| * @param string $key |
| * @param mixed $value |
| * @param \DateTimeInterface|\DateInterval|int|null $ttl |
| * @return bool |
| */ |
| public function put($key, $value, $ttl = null); |
| |
| /** |
| * Store an item in the cache if the key does not exist. |
| * |
| * @param string $key |
| * @param mixed $value |
| * @param \DateTimeInterface|\DateInterval|int|null $ttl |
| * @return bool |
| */ |
| public function add($key, $value, $ttl = null); |
| |
| /** |
| * Increment the value of an item in the cache. |
| * |
| * @param string $key |
| * @param mixed $value |
| * @return int|bool |
| */ |
| public function increment($key, $value = 1); |
| |
| /** |
| * Decrement the value of an item in the cache. |
| * |
| * @param string $key |
| * @param mixed $value |
| * @return int|bool |
| */ |
| public function decrement($key, $value = 1); |
| |
| /** |
| * Store an item in the cache indefinitely. |
| * |
| * @param string $key |
| * @param mixed $value |
| * @return bool |
| */ |
| public function forever($key, $value); |
| |
| /** |
| * Get an item from the cache, or execute the given Closure and store the result. |
| * |
| * @param string $key |
| * @param \DateTimeInterface|\DateInterval|int|null $ttl |
| * @param \Closure $callback |
| * @return mixed |
| */ |
| public function remember($key, $ttl, Closure $callback); |
| |
| /** |
| * Get an item from the cache, or execute the given Closure and store the result forever. |
| * |
| * @param string $key |
| * @param \Closure $callback |
| * @return mixed |
| */ |
| public function sear($key, Closure $callback); |
| |
| /** |
| * Get an item from the cache, or execute the given Closure and store the result forever. |
| * |
| * @param string $key |
| * @param \Closure $callback |
| * @return mixed |
| */ |
| public function rememberForever($key, Closure $callback); |
| |
| /** |
| * Remove an item from the cache. |
| * |
| * @param string $key |
| * @return bool |
| */ |
| public function forget($key); |
| |
| /** |
| * Get the cache store implementation. |
| * |
| * @return \Illuminate\Contracts\Cache\Store |
| */ |
| public function getStore(); |
| } |