109 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			109 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?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();
 | 
						|
}
 |