Вход Регистрация
Файл: gapps/vendor/phpunit/php-token-stream/src/Token/Stream/CachingFactory.php
Строк: 60
<?php
/*
 * This file is part of the PHP_TokenStream package.
 *
 * (c) Sebastian Bergmann <sebastian@phpunit.de>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

/**
 * A caching factory for token stream objects.
 *
 * @author    Sebastian Bergmann <sebastian@phpunit.de>
 * @copyright Sebastian Bergmann <sebastian@phpunit.de>
 * @license   http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
 * @link      http://github.com/sebastianbergmann/php-token-stream/tree
 * @since     Class available since Release 1.0.0
 */
class PHP_Token_Stream_CachingFactory
{
    
/**
     * @var array
     */
    
protected static $cache = array();

    
/**
     * @param  string $filename
     * @return PHP_Token_Stream
     */
    
public static function get($filename)
    {
        if (!isset(
self::$cache[$filename])) {
            
self::$cache[$filename] = new PHP_Token_Stream($filename);
        }

        return 
self::$cache[$filename];
    }

    
/**
     * @param string $filename
     */
    
public static function clear($filename null)
    {
        if (
is_string($filename)) {
            unset(
self::$cache[$filename]);
        } else {
            
self::$cache = array();
        }
    }
}
Онлайн: 0
Реклама