forked from GNUsocial/gnu-social
		
	[COMPOSER] Add new php-ffmpeg package
This commit is contained in:
		
							
								
								
									
										176
									
								
								vendor/zendframework/zend-stdlib/src/AbstractOptions.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										176
									
								
								vendor/zendframework/zend-stdlib/src/AbstractOptions.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,176 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use Traversable;
 | 
			
		||||
 | 
			
		||||
abstract class AbstractOptions implements ParameterObjectInterface
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * We use the __ prefix to avoid collisions with properties in
 | 
			
		||||
     * user-implementations.
 | 
			
		||||
     *
 | 
			
		||||
     * @var bool
 | 
			
		||||
     */
 | 
			
		||||
    protected $__strictMode__ = true;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Constructor
 | 
			
		||||
     *
 | 
			
		||||
     * @param  array|Traversable|null $options
 | 
			
		||||
     */
 | 
			
		||||
    public function __construct($options = null)
 | 
			
		||||
    {
 | 
			
		||||
        if (null !== $options) {
 | 
			
		||||
            $this->setFromArray($options);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Set one or more configuration properties
 | 
			
		||||
     *
 | 
			
		||||
     * @param  array|Traversable|AbstractOptions $options
 | 
			
		||||
     * @throws Exception\InvalidArgumentException
 | 
			
		||||
     * @return AbstractOptions Provides fluent interface
 | 
			
		||||
     */
 | 
			
		||||
    public function setFromArray($options)
 | 
			
		||||
    {
 | 
			
		||||
        if ($options instanceof self) {
 | 
			
		||||
            $options = $options->toArray();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (!is_array($options) && !$options instanceof Traversable) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException(
 | 
			
		||||
                sprintf(
 | 
			
		||||
                    'Parameter provided to %s must be an %s, %s or %s',
 | 
			
		||||
                    __METHOD__,
 | 
			
		||||
                    'array',
 | 
			
		||||
                    'Traversable',
 | 
			
		||||
                    'Zend\Stdlib\AbstractOptions'
 | 
			
		||||
                )
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        foreach ($options as $key => $value) {
 | 
			
		||||
            $this->__set($key, $value);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Cast to array
 | 
			
		||||
     *
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public function toArray()
 | 
			
		||||
    {
 | 
			
		||||
        $array = [];
 | 
			
		||||
        $transform = function ($letters) {
 | 
			
		||||
            $letter = array_shift($letters);
 | 
			
		||||
            return '_' . strtolower($letter);
 | 
			
		||||
        };
 | 
			
		||||
        foreach ($this as $key => $value) {
 | 
			
		||||
            if ($key === '__strictMode__') {
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
            $normalizedKey = preg_replace_callback('/([A-Z])/', $transform, $key);
 | 
			
		||||
            $array[$normalizedKey] = $value;
 | 
			
		||||
        }
 | 
			
		||||
        return $array;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Set a configuration property
 | 
			
		||||
     *
 | 
			
		||||
     * @see ParameterObject::__set()
 | 
			
		||||
     * @param string $key
 | 
			
		||||
     * @param mixed $value
 | 
			
		||||
     * @throws Exception\BadMethodCallException
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function __set($key, $value)
 | 
			
		||||
    {
 | 
			
		||||
        $setter = 'set' . str_replace('_', '', $key);
 | 
			
		||||
 | 
			
		||||
        if (is_callable([$this, $setter])) {
 | 
			
		||||
            $this->{$setter}($value);
 | 
			
		||||
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ($this->__strictMode__) {
 | 
			
		||||
            throw new Exception\BadMethodCallException(sprintf(
 | 
			
		||||
                'The option "%s" does not have a callable "%s" ("%s") setter method which must be defined',
 | 
			
		||||
                $key,
 | 
			
		||||
                'set' . str_replace(' ', '', ucwords(str_replace('_', ' ', $key))),
 | 
			
		||||
                $setter
 | 
			
		||||
            ));
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get a configuration property
 | 
			
		||||
     *
 | 
			
		||||
     * @see ParameterObject::__get()
 | 
			
		||||
     * @param string $key
 | 
			
		||||
     * @throws Exception\BadMethodCallException
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function __get($key)
 | 
			
		||||
    {
 | 
			
		||||
        $getter = 'get' . str_replace('_', '', $key);
 | 
			
		||||
 | 
			
		||||
        if (is_callable([$this, $getter])) {
 | 
			
		||||
            return $this->{$getter}();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        throw new Exception\BadMethodCallException(sprintf(
 | 
			
		||||
            'The option "%s" does not have a callable "%s" getter method which must be defined',
 | 
			
		||||
            $key,
 | 
			
		||||
            'get' . str_replace(' ', '', ucwords(str_replace('_', ' ', $key)))
 | 
			
		||||
        ));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Test if a configuration property is null
 | 
			
		||||
     * @see ParameterObject::__isset()
 | 
			
		||||
     * @param string $key
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public function __isset($key)
 | 
			
		||||
    {
 | 
			
		||||
        $getter = 'get' . str_replace('_', '', $key);
 | 
			
		||||
 | 
			
		||||
        return method_exists($this, $getter) && null !== $this->__get($key);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Set a configuration property to NULL
 | 
			
		||||
     *
 | 
			
		||||
     * @see ParameterObject::__unset()
 | 
			
		||||
     * @param string $key
 | 
			
		||||
     * @throws Exception\InvalidArgumentException
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function __unset($key)
 | 
			
		||||
    {
 | 
			
		||||
        try {
 | 
			
		||||
            $this->__set($key, null);
 | 
			
		||||
        } catch (Exception\BadMethodCallException $e) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException(
 | 
			
		||||
                'The class property $' . $key . ' cannot be unset as'
 | 
			
		||||
                . ' NULL is an invalid value for it',
 | 
			
		||||
                0,
 | 
			
		||||
                $e
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										432
									
								
								vendor/zendframework/zend-stdlib/src/ArrayObject.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										432
									
								
								vendor/zendframework/zend-stdlib/src/ArrayObject.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,432 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use ArrayAccess;
 | 
			
		||||
use Countable;
 | 
			
		||||
use IteratorAggregate;
 | 
			
		||||
use Serializable;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Custom framework ArrayObject implementation
 | 
			
		||||
 *
 | 
			
		||||
 * Extends version-specific "abstract" implementation.
 | 
			
		||||
 */
 | 
			
		||||
class ArrayObject implements IteratorAggregate, ArrayAccess, Serializable, Countable
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Properties of the object have their normal functionality
 | 
			
		||||
     * when accessed as list (var_dump, foreach, etc.).
 | 
			
		||||
     */
 | 
			
		||||
    const STD_PROP_LIST = 1;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Entries can be accessed as properties (read and write).
 | 
			
		||||
     */
 | 
			
		||||
    const ARRAY_AS_PROPS = 2;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @var array
 | 
			
		||||
     */
 | 
			
		||||
    protected $storage;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @var int
 | 
			
		||||
     */
 | 
			
		||||
    protected $flag;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @var string
 | 
			
		||||
     */
 | 
			
		||||
    protected $iteratorClass;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @var array
 | 
			
		||||
     */
 | 
			
		||||
    protected $protectedProperties;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Constructor
 | 
			
		||||
     *
 | 
			
		||||
     * @param array  $input
 | 
			
		||||
     * @param int    $flags
 | 
			
		||||
     * @param string $iteratorClass
 | 
			
		||||
     */
 | 
			
		||||
    public function __construct($input = [], $flags = self::STD_PROP_LIST, $iteratorClass = 'ArrayIterator')
 | 
			
		||||
    {
 | 
			
		||||
        $this->setFlags($flags);
 | 
			
		||||
        $this->storage = $input;
 | 
			
		||||
        $this->setIteratorClass($iteratorClass);
 | 
			
		||||
        $this->protectedProperties = array_keys(get_object_vars($this));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns whether the requested key exists
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $key
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public function __isset($key)
 | 
			
		||||
    {
 | 
			
		||||
        if ($this->flag == self::ARRAY_AS_PROPS) {
 | 
			
		||||
            return $this->offsetExists($key);
 | 
			
		||||
        }
 | 
			
		||||
        if (in_array($key, $this->protectedProperties)) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException('$key is a protected property, use a different key');
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return isset($this->$key);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sets the value at the specified key to value
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $key
 | 
			
		||||
     * @param  mixed $value
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function __set($key, $value)
 | 
			
		||||
    {
 | 
			
		||||
        if ($this->flag == self::ARRAY_AS_PROPS) {
 | 
			
		||||
            return $this->offsetSet($key, $value);
 | 
			
		||||
        }
 | 
			
		||||
        if (in_array($key, $this->protectedProperties)) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException('$key is a protected property, use a different key');
 | 
			
		||||
        }
 | 
			
		||||
        $this->$key = $value;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Unsets the value at the specified key
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $key
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function __unset($key)
 | 
			
		||||
    {
 | 
			
		||||
        if ($this->flag == self::ARRAY_AS_PROPS) {
 | 
			
		||||
            return $this->offsetUnset($key);
 | 
			
		||||
        }
 | 
			
		||||
        if (in_array($key, $this->protectedProperties)) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException('$key is a protected property, use a different key');
 | 
			
		||||
        }
 | 
			
		||||
        unset($this->$key);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the value at the specified key by reference
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $key
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function &__get($key)
 | 
			
		||||
    {
 | 
			
		||||
        $ret = null;
 | 
			
		||||
        if ($this->flag == self::ARRAY_AS_PROPS) {
 | 
			
		||||
            $ret =& $this->offsetGet($key);
 | 
			
		||||
 | 
			
		||||
            return $ret;
 | 
			
		||||
        }
 | 
			
		||||
        if (in_array($key, $this->protectedProperties)) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException('$key is a protected property, use a different key');
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $this->$key;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Appends the value
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $value
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function append($value)
 | 
			
		||||
    {
 | 
			
		||||
        $this->storage[] = $value;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sort the entries by value
 | 
			
		||||
     *
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function asort()
 | 
			
		||||
    {
 | 
			
		||||
        asort($this->storage);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get the number of public properties in the ArrayObject
 | 
			
		||||
     *
 | 
			
		||||
     * @return int
 | 
			
		||||
     */
 | 
			
		||||
    public function count()
 | 
			
		||||
    {
 | 
			
		||||
        return count($this->storage);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Exchange the array for another one.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  array|ArrayObject $data
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public function exchangeArray($data)
 | 
			
		||||
    {
 | 
			
		||||
        if (!is_array($data) && !is_object($data)) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException('Passed variable is not an array or object, using empty array instead');
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (is_object($data) && ($data instanceof self || $data instanceof \ArrayObject)) {
 | 
			
		||||
            $data = $data->getArrayCopy();
 | 
			
		||||
        }
 | 
			
		||||
        if (!is_array($data)) {
 | 
			
		||||
            $data = (array) $data;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $storage = $this->storage;
 | 
			
		||||
 | 
			
		||||
        $this->storage = $data;
 | 
			
		||||
 | 
			
		||||
        return $storage;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Creates a copy of the ArrayObject.
 | 
			
		||||
     *
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public function getArrayCopy()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->storage;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the behavior flags.
 | 
			
		||||
     *
 | 
			
		||||
     * @return int
 | 
			
		||||
     */
 | 
			
		||||
    public function getFlags()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->flag;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Create a new iterator from an ArrayObject instance
 | 
			
		||||
     *
 | 
			
		||||
     * @return \Iterator
 | 
			
		||||
     */
 | 
			
		||||
    public function getIterator()
 | 
			
		||||
    {
 | 
			
		||||
        $class = $this->iteratorClass;
 | 
			
		||||
 | 
			
		||||
        return new $class($this->storage);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the iterator classname for the ArrayObject.
 | 
			
		||||
     *
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function getIteratorClass()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->iteratorClass;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sort the entries by key
 | 
			
		||||
     *
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function ksort()
 | 
			
		||||
    {
 | 
			
		||||
        ksort($this->storage);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sort an array using a case insensitive "natural order" algorithm
 | 
			
		||||
     *
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function natcasesort()
 | 
			
		||||
    {
 | 
			
		||||
        natcasesort($this->storage);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sort entries using a "natural order" algorithm
 | 
			
		||||
     *
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function natsort()
 | 
			
		||||
    {
 | 
			
		||||
        natsort($this->storage);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns whether the requested key exists
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $key
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public function offsetExists($key)
 | 
			
		||||
    {
 | 
			
		||||
        return isset($this->storage[$key]);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the value at the specified key
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $key
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function &offsetGet($key)
 | 
			
		||||
    {
 | 
			
		||||
        $ret = null;
 | 
			
		||||
        if (!$this->offsetExists($key)) {
 | 
			
		||||
            return $ret;
 | 
			
		||||
        }
 | 
			
		||||
        $ret =& $this->storage[$key];
 | 
			
		||||
 | 
			
		||||
        return $ret;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sets the value at the specified key to value
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $key
 | 
			
		||||
     * @param  mixed $value
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function offsetSet($key, $value)
 | 
			
		||||
    {
 | 
			
		||||
        $this->storage[$key] = $value;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Unsets the value at the specified key
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $key
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function offsetUnset($key)
 | 
			
		||||
    {
 | 
			
		||||
        if ($this->offsetExists($key)) {
 | 
			
		||||
            unset($this->storage[$key]);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Serialize an ArrayObject
 | 
			
		||||
     *
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function serialize()
 | 
			
		||||
    {
 | 
			
		||||
        return serialize(get_object_vars($this));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sets the behavior flags
 | 
			
		||||
     *
 | 
			
		||||
     * @param  int  $flags
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function setFlags($flags)
 | 
			
		||||
    {
 | 
			
		||||
        $this->flag = $flags;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sets the iterator classname for the ArrayObject
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $class
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function setIteratorClass($class)
 | 
			
		||||
    {
 | 
			
		||||
        if (class_exists($class)) {
 | 
			
		||||
            $this->iteratorClass = $class;
 | 
			
		||||
 | 
			
		||||
            return ;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (strpos($class, '\\') === 0) {
 | 
			
		||||
            $class = '\\' . $class;
 | 
			
		||||
            if (class_exists($class)) {
 | 
			
		||||
                $this->iteratorClass = $class;
 | 
			
		||||
 | 
			
		||||
                return ;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        throw new Exception\InvalidArgumentException('The iterator class does not exist');
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sort the entries with a user-defined comparison function and maintain key association
 | 
			
		||||
     *
 | 
			
		||||
     * @param  callable $function
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function uasort($function)
 | 
			
		||||
    {
 | 
			
		||||
        if (is_callable($function)) {
 | 
			
		||||
            uasort($this->storage, $function);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sort the entries by keys using a user-defined comparison function
 | 
			
		||||
     *
 | 
			
		||||
     * @param  callable $function
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function uksort($function)
 | 
			
		||||
    {
 | 
			
		||||
        if (is_callable($function)) {
 | 
			
		||||
            uksort($this->storage, $function);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Unserialize an ArrayObject
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $data
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function unserialize($data)
 | 
			
		||||
    {
 | 
			
		||||
        $ar                        = unserialize($data);
 | 
			
		||||
        $this->protectedProperties = array_keys(get_object_vars($this));
 | 
			
		||||
 | 
			
		||||
        $this->setFlags($ar['flag']);
 | 
			
		||||
        $this->exchangeArray($ar['storage']);
 | 
			
		||||
        $this->setIteratorClass($ar['iteratorClass']);
 | 
			
		||||
 | 
			
		||||
        foreach ($ar as $k => $v) {
 | 
			
		||||
            switch ($k) {
 | 
			
		||||
                case 'flag':
 | 
			
		||||
                    $this->setFlags($v);
 | 
			
		||||
                    break;
 | 
			
		||||
                case 'storage':
 | 
			
		||||
                    $this->exchangeArray($v);
 | 
			
		||||
                    break;
 | 
			
		||||
                case 'iteratorClass':
 | 
			
		||||
                    $this->setIteratorClass($v);
 | 
			
		||||
                    break;
 | 
			
		||||
                case 'protectedProperties':
 | 
			
		||||
                    continue;
 | 
			
		||||
                default:
 | 
			
		||||
                    $this->__set($k, $v);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										28
									
								
								vendor/zendframework/zend-stdlib/src/ArraySerializableInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								vendor/zendframework/zend-stdlib/src/ArraySerializableInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,28 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
interface ArraySerializableInterface
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Exchange internal values from provided array
 | 
			
		||||
     *
 | 
			
		||||
     * @param  array $array
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function exchangeArray(array $array);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Return an array representation of the object
 | 
			
		||||
     *
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public function getArrayCopy();
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										33
									
								
								vendor/zendframework/zend-stdlib/src/ArrayStack.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								vendor/zendframework/zend-stdlib/src/ArrayStack.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,33 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use ArrayIterator;
 | 
			
		||||
use ArrayObject as PhpArrayObject;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * ArrayObject that acts as a stack with regards to iteration
 | 
			
		||||
 */
 | 
			
		||||
class ArrayStack extends PhpArrayObject
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Retrieve iterator
 | 
			
		||||
     *
 | 
			
		||||
     * Retrieve an array copy of the object, reverse its order, and return an
 | 
			
		||||
     * ArrayIterator with that reversed array.
 | 
			
		||||
     *
 | 
			
		||||
     * @return ArrayIterator
 | 
			
		||||
     */
 | 
			
		||||
    public function getIterator()
 | 
			
		||||
    {
 | 
			
		||||
        $array = $this->getArrayCopy();
 | 
			
		||||
        return new ArrayIterator(array_reverse($array));
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										335
									
								
								vendor/zendframework/zend-stdlib/src/ArrayUtils.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										335
									
								
								vendor/zendframework/zend-stdlib/src/ArrayUtils.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,335 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use Traversable;
 | 
			
		||||
use Zend\Stdlib\ArrayUtils\MergeRemoveKey;
 | 
			
		||||
use Zend\Stdlib\ArrayUtils\MergeReplaceKeyInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Utility class for testing and manipulation of PHP arrays.
 | 
			
		||||
 *
 | 
			
		||||
 * Declared abstract, as we have no need for instantiation.
 | 
			
		||||
 */
 | 
			
		||||
abstract class ArrayUtils
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Compatibility Flag for ArrayUtils::filter
 | 
			
		||||
     */
 | 
			
		||||
    const ARRAY_FILTER_USE_BOTH = 1;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Compatibility Flag for ArrayUtils::filter
 | 
			
		||||
     */
 | 
			
		||||
    const ARRAY_FILTER_USE_KEY  = 2;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Test whether an array contains one or more string keys
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $value
 | 
			
		||||
     * @param  bool  $allowEmpty    Should an empty array() return true
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public static function hasStringKeys($value, $allowEmpty = false)
 | 
			
		||||
    {
 | 
			
		||||
        if (!is_array($value)) {
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (!$value) {
 | 
			
		||||
            return $allowEmpty;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return count(array_filter(array_keys($value), 'is_string')) > 0;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Test whether an array contains one or more integer keys
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $value
 | 
			
		||||
     * @param  bool  $allowEmpty    Should an empty array() return true
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public static function hasIntegerKeys($value, $allowEmpty = false)
 | 
			
		||||
    {
 | 
			
		||||
        if (!is_array($value)) {
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (!$value) {
 | 
			
		||||
            return $allowEmpty;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return count(array_filter(array_keys($value), 'is_int')) > 0;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Test whether an array contains one or more numeric keys.
 | 
			
		||||
     *
 | 
			
		||||
     * A numeric key can be one of the following:
 | 
			
		||||
     * - an integer 1,
 | 
			
		||||
     * - a string with a number '20'
 | 
			
		||||
     * - a string with negative number: '-1000'
 | 
			
		||||
     * - a float: 2.2120, -78.150999
 | 
			
		||||
     * - a string with float:  '4000.99999', '-10.10'
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $value
 | 
			
		||||
     * @param  bool  $allowEmpty    Should an empty array() return true
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public static function hasNumericKeys($value, $allowEmpty = false)
 | 
			
		||||
    {
 | 
			
		||||
        if (!is_array($value)) {
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (!$value) {
 | 
			
		||||
            return $allowEmpty;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return count(array_filter(array_keys($value), 'is_numeric')) > 0;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Test whether an array is a list
 | 
			
		||||
     *
 | 
			
		||||
     * A list is a collection of values assigned to continuous integer keys
 | 
			
		||||
     * starting at 0 and ending at count() - 1.
 | 
			
		||||
     *
 | 
			
		||||
     * For example:
 | 
			
		||||
     * <code>
 | 
			
		||||
     * $list = array('a', 'b', 'c', 'd');
 | 
			
		||||
     * $list = array(
 | 
			
		||||
     *     0 => 'foo',
 | 
			
		||||
     *     1 => 'bar',
 | 
			
		||||
     *     2 => array('foo' => 'baz'),
 | 
			
		||||
     * );
 | 
			
		||||
     * </code>
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $value
 | 
			
		||||
     * @param  bool  $allowEmpty    Is an empty list a valid list?
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public static function isList($value, $allowEmpty = false)
 | 
			
		||||
    {
 | 
			
		||||
        if (!is_array($value)) {
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (!$value) {
 | 
			
		||||
            return $allowEmpty;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return (array_values($value) === $value);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Test whether an array is a hash table.
 | 
			
		||||
     *
 | 
			
		||||
     * An array is a hash table if:
 | 
			
		||||
     *
 | 
			
		||||
     * 1. Contains one or more non-integer keys, or
 | 
			
		||||
     * 2. Integer keys are non-continuous or misaligned (not starting with 0)
 | 
			
		||||
     *
 | 
			
		||||
     * For example:
 | 
			
		||||
     * <code>
 | 
			
		||||
     * $hash = array(
 | 
			
		||||
     *     'foo' => 15,
 | 
			
		||||
     *     'bar' => false,
 | 
			
		||||
     * );
 | 
			
		||||
     * $hash = array(
 | 
			
		||||
     *     1995  => 'Birth of PHP',
 | 
			
		||||
     *     2009  => 'PHP 5.3.0',
 | 
			
		||||
     *     2012  => 'PHP 5.4.0',
 | 
			
		||||
     * );
 | 
			
		||||
     * $hash = array(
 | 
			
		||||
     *     'formElement,
 | 
			
		||||
     *     'options' => array( 'debug' => true ),
 | 
			
		||||
     * );
 | 
			
		||||
     * </code>
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $value
 | 
			
		||||
     * @param  bool  $allowEmpty    Is an empty array() a valid hash table?
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public static function isHashTable($value, $allowEmpty = false)
 | 
			
		||||
    {
 | 
			
		||||
        if (!is_array($value)) {
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (!$value) {
 | 
			
		||||
            return $allowEmpty;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return (array_values($value) !== $value);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Checks if a value exists in an array.
 | 
			
		||||
     *
 | 
			
		||||
     * Due to "foo" == 0 === TRUE with in_array when strict = false, an option
 | 
			
		||||
     * has been added to prevent this. When $strict = 0/false, the most secure
 | 
			
		||||
     * non-strict check is implemented. if $strict = -1, the default in_array
 | 
			
		||||
     * non-strict behaviour is used.
 | 
			
		||||
     *
 | 
			
		||||
     * @param mixed $needle
 | 
			
		||||
     * @param array $haystack
 | 
			
		||||
     * @param int|bool $strict
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public static function inArray($needle, array $haystack, $strict = false)
 | 
			
		||||
    {
 | 
			
		||||
        if (!$strict) {
 | 
			
		||||
            if (is_int($needle) || is_float($needle)) {
 | 
			
		||||
                $needle = (string) $needle;
 | 
			
		||||
            }
 | 
			
		||||
            if (is_string($needle)) {
 | 
			
		||||
                foreach ($haystack as &$h) {
 | 
			
		||||
                    if (is_int($h) || is_float($h)) {
 | 
			
		||||
                        $h = (string) $h;
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return in_array($needle, $haystack, $strict);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Convert an iterator to an array.
 | 
			
		||||
     *
 | 
			
		||||
     * Converts an iterator to an array. The $recursive flag, on by default,
 | 
			
		||||
     * hints whether or not you want to do so recursively.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  array|Traversable  $iterator     The array or Traversable object to convert
 | 
			
		||||
     * @param  bool               $recursive    Recursively check all nested structures
 | 
			
		||||
     * @throws Exception\InvalidArgumentException if $iterator is not an array or a Traversable object
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public static function iteratorToArray($iterator, $recursive = true)
 | 
			
		||||
    {
 | 
			
		||||
        if (!is_array($iterator) && !$iterator instanceof Traversable) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException(__METHOD__ . ' expects an array or Traversable object');
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (!$recursive) {
 | 
			
		||||
            if (is_array($iterator)) {
 | 
			
		||||
                return $iterator;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            return iterator_to_array($iterator);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (method_exists($iterator, 'toArray')) {
 | 
			
		||||
            return $iterator->toArray();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $array = [];
 | 
			
		||||
        foreach ($iterator as $key => $value) {
 | 
			
		||||
            if (is_scalar($value)) {
 | 
			
		||||
                $array[$key] = $value;
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if ($value instanceof Traversable) {
 | 
			
		||||
                $array[$key] = static::iteratorToArray($value, $recursive);
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if (is_array($value)) {
 | 
			
		||||
                $array[$key] = static::iteratorToArray($value, $recursive);
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            $array[$key] = $value;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $array;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Merge two arrays together.
 | 
			
		||||
     *
 | 
			
		||||
     * If an integer key exists in both arrays and preserveNumericKeys is false, the value
 | 
			
		||||
     * from the second array will be appended to the first array. If both values are arrays, they
 | 
			
		||||
     * are merged together, else the value of the second array overwrites the one of the first array.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  array $a
 | 
			
		||||
     * @param  array $b
 | 
			
		||||
     * @param  bool  $preserveNumericKeys
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public static function merge(array $a, array $b, $preserveNumericKeys = false)
 | 
			
		||||
    {
 | 
			
		||||
        foreach ($b as $key => $value) {
 | 
			
		||||
            if ($value instanceof MergeReplaceKeyInterface) {
 | 
			
		||||
                $a[$key] = $value->getData();
 | 
			
		||||
            } elseif (isset($a[$key]) || array_key_exists($key, $a)) {
 | 
			
		||||
                if ($value instanceof MergeRemoveKey) {
 | 
			
		||||
                    unset($a[$key]);
 | 
			
		||||
                } elseif (!$preserveNumericKeys && is_int($key)) {
 | 
			
		||||
                    $a[] = $value;
 | 
			
		||||
                } elseif (is_array($value) && is_array($a[$key])) {
 | 
			
		||||
                    $a[$key] = static::merge($a[$key], $value, $preserveNumericKeys);
 | 
			
		||||
                } else {
 | 
			
		||||
                    $a[$key] = $value;
 | 
			
		||||
                }
 | 
			
		||||
            } else {
 | 
			
		||||
                if (!$value instanceof MergeRemoveKey) {
 | 
			
		||||
                    $a[$key] = $value;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $a;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Compatibility Method for array_filter on <5.6 systems
 | 
			
		||||
     *
 | 
			
		||||
     * @param array $data
 | 
			
		||||
     * @param callable $callback
 | 
			
		||||
     * @param null|int $flag
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public static function filter(array $data, $callback, $flag = null)
 | 
			
		||||
    {
 | 
			
		||||
        if (! is_callable($callback)) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException(sprintf(
 | 
			
		||||
                'Second parameter of %s must be callable',
 | 
			
		||||
                __METHOD__
 | 
			
		||||
            ));
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (version_compare(PHP_VERSION, '5.6.0') >= 0) {
 | 
			
		||||
            return array_filter($data, $callback, $flag);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $output = [];
 | 
			
		||||
        foreach ($data as $key => $value) {
 | 
			
		||||
            $params = [$value];
 | 
			
		||||
 | 
			
		||||
            if ($flag === static::ARRAY_FILTER_USE_BOTH) {
 | 
			
		||||
                $params[] = $key;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if ($flag === static::ARRAY_FILTER_USE_KEY) {
 | 
			
		||||
                $params = [$key];
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            $response = call_user_func_array($callback, $params);
 | 
			
		||||
            if ($response) {
 | 
			
		||||
                $output[$key] = $value;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $output;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										14
									
								
								vendor/zendframework/zend-stdlib/src/ArrayUtils/MergeRemoveKey.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								vendor/zendframework/zend-stdlib/src/ArrayUtils/MergeRemoveKey.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\ArrayUtils;
 | 
			
		||||
 | 
			
		||||
final class MergeRemoveKey
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										34
									
								
								vendor/zendframework/zend-stdlib/src/ArrayUtils/MergeReplaceKey.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								vendor/zendframework/zend-stdlib/src/ArrayUtils/MergeReplaceKey.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,34 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\ArrayUtils;
 | 
			
		||||
 | 
			
		||||
final class MergeReplaceKey implements MergeReplaceKeyInterface
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * @var mixed
 | 
			
		||||
     */
 | 
			
		||||
    protected $data;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @param mixed $data
 | 
			
		||||
     */
 | 
			
		||||
    public function __construct($data)
 | 
			
		||||
    {
 | 
			
		||||
        $this->data = $data;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * {@inheritDoc}
 | 
			
		||||
     */
 | 
			
		||||
    public function getData()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->data;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										21
									
								
								vendor/zendframework/zend-stdlib/src/ArrayUtils/MergeReplaceKeyInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								vendor/zendframework/zend-stdlib/src/ArrayUtils/MergeReplaceKeyInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,21 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\ArrayUtils;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Marker interface: can be used to replace keys completely in {@see ArrayUtils::merge()} operations
 | 
			
		||||
 */
 | 
			
		||||
interface MergeReplaceKeyInterface
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function getData();
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										197
									
								
								vendor/zendframework/zend-stdlib/src/CallbackHandler.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										197
									
								
								vendor/zendframework/zend-stdlib/src/CallbackHandler.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,197 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use ReflectionClass;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * CallbackHandler
 | 
			
		||||
 *
 | 
			
		||||
 * A handler for an event, event, filterchain, etc. Abstracts PHP callbacks,
 | 
			
		||||
 * primarily to allow for lazy-loading and ensuring availability of default
 | 
			
		||||
 * arguments (currying).
 | 
			
		||||
 *
 | 
			
		||||
 * This was primarily used in zend-eventmanager for managing listeners; as that
 | 
			
		||||
 * component removes its usage of this class for v3, it is deprecated.
 | 
			
		||||
 *
 | 
			
		||||
 * @deprecated as of v2.7.4.
 | 
			
		||||
 */
 | 
			
		||||
class CallbackHandler
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * @var string|array|callable PHP callback to invoke
 | 
			
		||||
     */
 | 
			
		||||
    protected $callback;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Callback metadata, if any
 | 
			
		||||
     * @var array
 | 
			
		||||
     */
 | 
			
		||||
    protected $metadata;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Constructor
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string|array|object|callable $callback PHP callback
 | 
			
		||||
     * @param  array                        $metadata  Callback metadata
 | 
			
		||||
     */
 | 
			
		||||
    public function __construct($callback, array $metadata = [])
 | 
			
		||||
    {
 | 
			
		||||
        $this->metadata  = $metadata;
 | 
			
		||||
        $this->registerCallback($callback);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Registers the callback provided in the constructor
 | 
			
		||||
     *
 | 
			
		||||
     * @param  callable $callback
 | 
			
		||||
     * @throws Exception\InvalidCallbackException
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    protected function registerCallback($callback)
 | 
			
		||||
    {
 | 
			
		||||
        if (!is_callable($callback)) {
 | 
			
		||||
            throw new Exception\InvalidCallbackException('Invalid callback provided; not callable');
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $this->callback = $callback;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Retrieve registered callback
 | 
			
		||||
     *
 | 
			
		||||
     * @return callable
 | 
			
		||||
     */
 | 
			
		||||
    public function getCallback()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->callback;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Invoke handler
 | 
			
		||||
     *
 | 
			
		||||
     * @param  array $args Arguments to pass to callback
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function call(array $args = [])
 | 
			
		||||
    {
 | 
			
		||||
        $callback = $this->getCallback();
 | 
			
		||||
        $argCount = count($args);
 | 
			
		||||
 | 
			
		||||
        if (is_string($callback)) {
 | 
			
		||||
            $result = $this->validateStringCallbackFor54($callback);
 | 
			
		||||
 | 
			
		||||
            if ($result !== true && $argCount <= 3) {
 | 
			
		||||
                $callback       = $result;
 | 
			
		||||
                // Minor performance tweak, if the callback gets called more
 | 
			
		||||
                // than once
 | 
			
		||||
                $this->callback = $result;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // Minor performance tweak; use call_user_func() until > 3 arguments
 | 
			
		||||
        // reached
 | 
			
		||||
        switch ($argCount) {
 | 
			
		||||
            case 0:
 | 
			
		||||
                return $callback();
 | 
			
		||||
            case 1:
 | 
			
		||||
                return $callback(array_shift($args));
 | 
			
		||||
            case 2:
 | 
			
		||||
                $arg1 = array_shift($args);
 | 
			
		||||
                $arg2 = array_shift($args);
 | 
			
		||||
                return $callback($arg1, $arg2);
 | 
			
		||||
            case 3:
 | 
			
		||||
                $arg1 = array_shift($args);
 | 
			
		||||
                $arg2 = array_shift($args);
 | 
			
		||||
                $arg3 = array_shift($args);
 | 
			
		||||
                return $callback($arg1, $arg2, $arg3);
 | 
			
		||||
            default:
 | 
			
		||||
                return call_user_func_array($callback, $args);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Invoke as functor
 | 
			
		||||
     *
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function __invoke()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->call(func_get_args());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get all callback metadata
 | 
			
		||||
     *
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public function getMetadata()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->metadata;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Retrieve a single metadatum
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $name
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function getMetadatum($name)
 | 
			
		||||
    {
 | 
			
		||||
        if (array_key_exists($name, $this->metadata)) {
 | 
			
		||||
            return $this->metadata[$name];
 | 
			
		||||
        }
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Validate a static method call
 | 
			
		||||
     *
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $callback
 | 
			
		||||
     * @return true|array
 | 
			
		||||
     * @throws Exception\InvalidCallbackException if invalid
 | 
			
		||||
     */
 | 
			
		||||
    protected function validateStringCallbackFor54($callback)
 | 
			
		||||
    {
 | 
			
		||||
        if (!strstr($callback, '::')) {
 | 
			
		||||
            return true;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        list($class, $method) = explode('::', $callback, 2);
 | 
			
		||||
 | 
			
		||||
        if (!class_exists($class)) {
 | 
			
		||||
            throw new Exception\InvalidCallbackException(sprintf(
 | 
			
		||||
                'Static method call "%s" refers to a class that does not exist',
 | 
			
		||||
                $callback
 | 
			
		||||
            ));
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $r = new ReflectionClass($class);
 | 
			
		||||
        if (!$r->hasMethod($method)) {
 | 
			
		||||
            throw new Exception\InvalidCallbackException(sprintf(
 | 
			
		||||
                'Static method call "%s" refers to a method that does not exist',
 | 
			
		||||
                $callback
 | 
			
		||||
            ));
 | 
			
		||||
        }
 | 
			
		||||
        $m = $r->getMethod($method);
 | 
			
		||||
        if (!$m->isStatic()) {
 | 
			
		||||
            throw new Exception\InvalidCallbackException(sprintf(
 | 
			
		||||
                'Static method call "%s" refers to a method that is not static',
 | 
			
		||||
                $callback
 | 
			
		||||
            ));
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // returning a non boolean value may not be nice for a validate method,
 | 
			
		||||
        // but that allows the usage of a static string callback without using
 | 
			
		||||
        // the call_user_func function.
 | 
			
		||||
        return [$class, $method];
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										47
									
								
								vendor/zendframework/zend-stdlib/src/DateTime.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								vendor/zendframework/zend-stdlib/src/DateTime.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,47 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use DateTimeZone;
 | 
			
		||||
 | 
			
		||||
trigger_error('DateTime extension deprecated as of ZF 2.1.4; use the \DateTime constructor to parse extended ISO8601 dates instead', E_USER_DEPRECATED);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * DateTime
 | 
			
		||||
 *
 | 
			
		||||
 * An extension of the \DateTime object.
 | 
			
		||||
 *
 | 
			
		||||
 * @deprecated
 | 
			
		||||
 */
 | 
			
		||||
class DateTime extends \DateTime
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * The DateTime::ISO8601 constant used by php's native DateTime object does
 | 
			
		||||
     * not allow for fractions of a second. This function better handles ISO8601
 | 
			
		||||
     * formatted date strings.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string       $time
 | 
			
		||||
     * @param  DateTimeZone $timezone
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public static function createFromISO8601($time, DateTimeZone $timezone = null)
 | 
			
		||||
    {
 | 
			
		||||
        $format = self::ISO8601;
 | 
			
		||||
        if (isset($time[19]) && $time[19] === '.') {
 | 
			
		||||
            $format = 'Y-m-d\TH:i:s.uO';
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ($timezone !== null) {
 | 
			
		||||
            return self::createFromFormat($format, $time, $timezone);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return self::createFromFormat($format, $time);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										22
									
								
								vendor/zendframework/zend-stdlib/src/DispatchableInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								vendor/zendframework/zend-stdlib/src/DispatchableInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
interface DispatchableInterface
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Dispatch a request
 | 
			
		||||
     *
 | 
			
		||||
     * @param RequestInterface $request
 | 
			
		||||
     * @param null|ResponseInterface $response
 | 
			
		||||
     * @return Response|mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function dispatch(RequestInterface $request, ResponseInterface $response = null);
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										115
									
								
								vendor/zendframework/zend-stdlib/src/ErrorHandler.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										115
									
								
								vendor/zendframework/zend-stdlib/src/ErrorHandler.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,115 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use ErrorException;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * ErrorHandler that can be used to catch internal PHP errors
 | 
			
		||||
 * and convert to an ErrorException instance.
 | 
			
		||||
 */
 | 
			
		||||
abstract class ErrorHandler
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Active stack
 | 
			
		||||
     *
 | 
			
		||||
     * @var array
 | 
			
		||||
     */
 | 
			
		||||
    protected static $stack = [];
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Check if this error handler is active
 | 
			
		||||
     *
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public static function started()
 | 
			
		||||
    {
 | 
			
		||||
        return (bool) static::getNestedLevel();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get the current nested level
 | 
			
		||||
     *
 | 
			
		||||
     * @return int
 | 
			
		||||
     */
 | 
			
		||||
    public static function getNestedLevel()
 | 
			
		||||
    {
 | 
			
		||||
        return count(static::$stack);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Starting the error handler
 | 
			
		||||
     *
 | 
			
		||||
     * @param int $errorLevel
 | 
			
		||||
     */
 | 
			
		||||
    public static function start($errorLevel = \E_WARNING)
 | 
			
		||||
    {
 | 
			
		||||
        if (!static::$stack) {
 | 
			
		||||
            set_error_handler([get_called_class(), 'addError'], $errorLevel);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        static::$stack[] = null;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Stopping the error handler
 | 
			
		||||
     *
 | 
			
		||||
     * @param  bool $throw Throw the ErrorException if any
 | 
			
		||||
     * @return null|ErrorException
 | 
			
		||||
     * @throws ErrorException If an error has been catched and $throw is true
 | 
			
		||||
     */
 | 
			
		||||
    public static function stop($throw = false)
 | 
			
		||||
    {
 | 
			
		||||
        $errorException = null;
 | 
			
		||||
 | 
			
		||||
        if (static::$stack) {
 | 
			
		||||
            $errorException = array_pop(static::$stack);
 | 
			
		||||
 | 
			
		||||
            if (!static::$stack) {
 | 
			
		||||
                restore_error_handler();
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if ($errorException && $throw) {
 | 
			
		||||
                throw $errorException;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $errorException;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Stop all active handler
 | 
			
		||||
     *
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public static function clean()
 | 
			
		||||
    {
 | 
			
		||||
        if (static::$stack) {
 | 
			
		||||
            restore_error_handler();
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        static::$stack = [];
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Add an error to the stack
 | 
			
		||||
     *
 | 
			
		||||
     * @param int    $errno
 | 
			
		||||
     * @param string $errstr
 | 
			
		||||
     * @param string $errfile
 | 
			
		||||
     * @param int    $errline
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public static function addError($errno, $errstr = '', $errfile = '', $errline = 0)
 | 
			
		||||
    {
 | 
			
		||||
        $stack = & static::$stack[count(static::$stack) - 1];
 | 
			
		||||
        $stack = new ErrorException($errstr, 0, $errno, $errfile, $errline, $stack);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/BadMethodCallException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/BadMethodCallException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Exception;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Bad method call exception
 | 
			
		||||
 */
 | 
			
		||||
class BadMethodCallException extends \BadMethodCallException implements ExceptionInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/DomainException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/DomainException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Exception;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Domain exception
 | 
			
		||||
 */
 | 
			
		||||
class DomainException extends \DomainException implements ExceptionInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/ExceptionInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/ExceptionInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Exception;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Exception marker interface
 | 
			
		||||
 */
 | 
			
		||||
interface ExceptionInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/ExtensionNotLoadedException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/ExtensionNotLoadedException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Exception;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Extension not loaded exception
 | 
			
		||||
 */
 | 
			
		||||
class ExtensionNotLoadedException extends RuntimeException
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/InvalidArgumentException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/InvalidArgumentException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Exception;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Invalid Argument Exception
 | 
			
		||||
 */
 | 
			
		||||
class InvalidArgumentException extends \InvalidArgumentException implements ExceptionInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/InvalidCallbackException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/InvalidCallbackException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Exception;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Invalid callback exception
 | 
			
		||||
 */
 | 
			
		||||
class InvalidCallbackException extends DomainException implements ExceptionInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/LogicException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/LogicException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Exception;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Logic exception
 | 
			
		||||
 */
 | 
			
		||||
class LogicException extends \LogicException implements ExceptionInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/RuntimeException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								vendor/zendframework/zend-stdlib/src/Exception/RuntimeException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Exception;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Runtime exception
 | 
			
		||||
 */
 | 
			
		||||
class RuntimeException extends \RuntimeException implements ExceptionInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Extractor/ExtractionInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Extractor/ExtractionInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Extractor;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\ExtractionInterface as BaseExtractionInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\ExtractionInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface ExtractionInterface extends BaseExtractionInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										343
									
								
								vendor/zendframework/zend-stdlib/src/FastPriorityQueue.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										343
									
								
								vendor/zendframework/zend-stdlib/src/FastPriorityQueue.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,343 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use Iterator;
 | 
			
		||||
use Countable;
 | 
			
		||||
use Serializable;
 | 
			
		||||
use SplPriorityQueue as PhpSplPriorityQueue;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * This is an efficient implementation of an integer priority queue in PHP
 | 
			
		||||
 *
 | 
			
		||||
 * This class acts like a queue with insert() and extract(), removing the
 | 
			
		||||
 * elements from the queue and it also acts like an Iterator without removing
 | 
			
		||||
 * the elements. This behaviour can be used in mixed scenarios with high
 | 
			
		||||
 * performance boost.
 | 
			
		||||
 */
 | 
			
		||||
class FastPriorityQueue implements Iterator, Countable, Serializable
 | 
			
		||||
{
 | 
			
		||||
    const EXTR_DATA     = PhpSplPriorityQueue::EXTR_DATA;
 | 
			
		||||
    const EXTR_PRIORITY = PhpSplPriorityQueue::EXTR_PRIORITY;
 | 
			
		||||
    const EXTR_BOTH     = PhpSplPriorityQueue::EXTR_BOTH;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @var integer
 | 
			
		||||
     */
 | 
			
		||||
    protected $extractFlag = self::EXTR_DATA;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Elements of the queue, divided by priorities
 | 
			
		||||
     *
 | 
			
		||||
     * @var array
 | 
			
		||||
     */
 | 
			
		||||
    protected $values = [];
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Array of priorities
 | 
			
		||||
     *
 | 
			
		||||
     * @var array
 | 
			
		||||
     */
 | 
			
		||||
    protected $priorities = [];
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Array of priorities used for the iteration
 | 
			
		||||
     *
 | 
			
		||||
     * @var array
 | 
			
		||||
     */
 | 
			
		||||
    protected $subPriorities = [];
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Max priority
 | 
			
		||||
     *
 | 
			
		||||
     * @var integer
 | 
			
		||||
     */
 | 
			
		||||
    protected $maxPriority = 0;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Total number of elements in the queue
 | 
			
		||||
     *
 | 
			
		||||
     * @var integer
 | 
			
		||||
     */
 | 
			
		||||
    protected $count = 0;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Index of the current element in the queue
 | 
			
		||||
     *
 | 
			
		||||
     * @var integer
 | 
			
		||||
     */
 | 
			
		||||
    protected $index = 0;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sub index of the current element in the same priority level
 | 
			
		||||
     *
 | 
			
		||||
     * @var integer
 | 
			
		||||
     */
 | 
			
		||||
    protected $subIndex = 0;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Insert an element in the queue with a specified priority
 | 
			
		||||
     *
 | 
			
		||||
     * @param mixed $value
 | 
			
		||||
     * @param integer $priority a positive integer
 | 
			
		||||
     */
 | 
			
		||||
    public function insert($value, $priority)
 | 
			
		||||
    {
 | 
			
		||||
        if (! is_int($priority)) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException('The priority must be an integer');
 | 
			
		||||
        }
 | 
			
		||||
        $this->values[$priority][] = $value;
 | 
			
		||||
        if (! isset($this->priorities[$priority])) {
 | 
			
		||||
            $this->priorities[$priority] = $priority;
 | 
			
		||||
            $this->maxPriority           = max($priority, $this->maxPriority);
 | 
			
		||||
        }
 | 
			
		||||
        ++$this->count;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Extract an element in the queue according to the priority and the
 | 
			
		||||
     * order of insertion
 | 
			
		||||
     *
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function extract()
 | 
			
		||||
    {
 | 
			
		||||
        if (! $this->valid()) {
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
        $value = $this->current();
 | 
			
		||||
        $this->nextAndRemove();
 | 
			
		||||
        return $value;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Remove an item from the queue
 | 
			
		||||
     *
 | 
			
		||||
     * This is different than {@link extract()}; its purpose is to dequeue an
 | 
			
		||||
     * item.
 | 
			
		||||
     *
 | 
			
		||||
     * Note: this removes the first item matching the provided item found. If
 | 
			
		||||
     * the same item has been added multiple times, it will not remove other
 | 
			
		||||
     * instances.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $datum
 | 
			
		||||
     * @return bool False if the item was not found, true otherwise.
 | 
			
		||||
     */
 | 
			
		||||
    public function remove($datum)
 | 
			
		||||
    {
 | 
			
		||||
        $this->rewind();
 | 
			
		||||
        while ($this->valid()) {
 | 
			
		||||
            if (current($this->values[$this->maxPriority]) === $datum) {
 | 
			
		||||
                $index = key($this->values[$this->maxPriority]);
 | 
			
		||||
                unset($this->values[$this->maxPriority][$index]);
 | 
			
		||||
                --$this->count;
 | 
			
		||||
                return true;
 | 
			
		||||
            }
 | 
			
		||||
            $this->next();
 | 
			
		||||
        }
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get the total number of elements in the queue
 | 
			
		||||
     *
 | 
			
		||||
     * @return integer
 | 
			
		||||
     */
 | 
			
		||||
    public function count()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->count;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get the current element in the queue
 | 
			
		||||
     *
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function current()
 | 
			
		||||
    {
 | 
			
		||||
        switch ($this->extractFlag) {
 | 
			
		||||
            case self::EXTR_DATA:
 | 
			
		||||
                return current($this->values[$this->maxPriority]);
 | 
			
		||||
            case self::EXTR_PRIORITY:
 | 
			
		||||
                return $this->maxPriority;
 | 
			
		||||
            case self::EXTR_BOTH:
 | 
			
		||||
                return [
 | 
			
		||||
                    'data'     => current($this->values[$this->maxPriority]),
 | 
			
		||||
                    'priority' => $this->maxPriority
 | 
			
		||||
                ];
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get the index of the current element in the queue
 | 
			
		||||
     *
 | 
			
		||||
     * @return integer
 | 
			
		||||
     */
 | 
			
		||||
    public function key()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->index;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Set the iterator pointer to the next element in the queue
 | 
			
		||||
     * removing the previous element
 | 
			
		||||
     */
 | 
			
		||||
    protected function nextAndRemove()
 | 
			
		||||
    {
 | 
			
		||||
        if (false === next($this->values[$this->maxPriority])) {
 | 
			
		||||
            unset($this->priorities[$this->maxPriority]);
 | 
			
		||||
            unset($this->values[$this->maxPriority]);
 | 
			
		||||
            $this->maxPriority = empty($this->priorities) ? 0 : max($this->priorities);
 | 
			
		||||
            $this->subIndex    = -1;
 | 
			
		||||
        }
 | 
			
		||||
        ++$this->index;
 | 
			
		||||
        ++$this->subIndex;
 | 
			
		||||
        --$this->count;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Set the iterator pointer to the next element in the queue
 | 
			
		||||
     * without removing the previous element
 | 
			
		||||
     */
 | 
			
		||||
    public function next()
 | 
			
		||||
    {
 | 
			
		||||
        if (false === next($this->values[$this->maxPriority])) {
 | 
			
		||||
            unset($this->subPriorities[$this->maxPriority]);
 | 
			
		||||
            reset($this->values[$this->maxPriority]);
 | 
			
		||||
            $this->maxPriority = empty($this->subPriorities) ? 0 : max($this->subPriorities);
 | 
			
		||||
            $this->subIndex    = -1;
 | 
			
		||||
        }
 | 
			
		||||
        ++$this->index;
 | 
			
		||||
        ++$this->subIndex;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Check if the current iterator is valid
 | 
			
		||||
     *
 | 
			
		||||
     * @return boolean
 | 
			
		||||
     */
 | 
			
		||||
    public function valid()
 | 
			
		||||
    {
 | 
			
		||||
        return isset($this->values[$this->maxPriority]);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Rewind the current iterator
 | 
			
		||||
     */
 | 
			
		||||
    public function rewind()
 | 
			
		||||
    {
 | 
			
		||||
        $this->subPriorities = $this->priorities;
 | 
			
		||||
        $this->maxPriority   = empty($this->priorities) ? 0 : max($this->priorities);
 | 
			
		||||
        $this->index         = 0;
 | 
			
		||||
        $this->subIndex      = 0;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Serialize to an array
 | 
			
		||||
     *
 | 
			
		||||
     * Array will be priority => data pairs
 | 
			
		||||
     *
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public function toArray()
 | 
			
		||||
    {
 | 
			
		||||
        $array = [];
 | 
			
		||||
        foreach (clone $this as $item) {
 | 
			
		||||
            $array[] = $item;
 | 
			
		||||
        }
 | 
			
		||||
        return $array;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Serialize
 | 
			
		||||
     *
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function serialize()
 | 
			
		||||
    {
 | 
			
		||||
        $clone = clone $this;
 | 
			
		||||
        $clone->setExtractFlags(self::EXTR_BOTH);
 | 
			
		||||
 | 
			
		||||
        $data = [];
 | 
			
		||||
        foreach ($clone as $item) {
 | 
			
		||||
            $data[] = $item;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return serialize($data);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Deserialize
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $data
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function unserialize($data)
 | 
			
		||||
    {
 | 
			
		||||
        foreach (unserialize($data) as $item) {
 | 
			
		||||
            $this->insert($item['data'], $item['priority']);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Set the extract flag
 | 
			
		||||
     *
 | 
			
		||||
     * @param integer $flag
 | 
			
		||||
     */
 | 
			
		||||
    public function setExtractFlags($flag)
 | 
			
		||||
    {
 | 
			
		||||
        switch ($flag) {
 | 
			
		||||
            case self::EXTR_DATA:
 | 
			
		||||
            case self::EXTR_PRIORITY:
 | 
			
		||||
            case self::EXTR_BOTH:
 | 
			
		||||
                $this->extractFlag = $flag;
 | 
			
		||||
                break;
 | 
			
		||||
            default:
 | 
			
		||||
                throw new Exception\InvalidArgumentException("The extract flag specified is not valid");
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Check if the queue is empty
 | 
			
		||||
     *
 | 
			
		||||
     * @return boolean
 | 
			
		||||
     */
 | 
			
		||||
    public function isEmpty()
 | 
			
		||||
    {
 | 
			
		||||
        return empty($this->values);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Does the queue contain the given datum?
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $datum
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public function contains($datum)
 | 
			
		||||
    {
 | 
			
		||||
        foreach ($this->values as $values) {
 | 
			
		||||
            if (in_array($datum, $values)) {
 | 
			
		||||
                return true;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Does the queue have an item with the given priority?
 | 
			
		||||
     *
 | 
			
		||||
     * @param  int $priority
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public function hasPriority($priority)
 | 
			
		||||
    {
 | 
			
		||||
        return isset($this->values[$priority]);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										202
									
								
								vendor/zendframework/zend-stdlib/src/Glob.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										202
									
								
								vendor/zendframework/zend-stdlib/src/Glob.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,202 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Wrapper for glob with fallback if GLOB_BRACE is not available.
 | 
			
		||||
 */
 | 
			
		||||
abstract class Glob
 | 
			
		||||
{
 | 
			
		||||
    /**#@+
 | 
			
		||||
     * Glob constants.
 | 
			
		||||
     */
 | 
			
		||||
    const GLOB_MARK     = 0x01;
 | 
			
		||||
    const GLOB_NOSORT   = 0x02;
 | 
			
		||||
    const GLOB_NOCHECK  = 0x04;
 | 
			
		||||
    const GLOB_NOESCAPE = 0x08;
 | 
			
		||||
    const GLOB_BRACE    = 0x10;
 | 
			
		||||
    const GLOB_ONLYDIR  = 0x20;
 | 
			
		||||
    const GLOB_ERR      = 0x40;
 | 
			
		||||
    /**#@-*/
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Find pathnames matching a pattern.
 | 
			
		||||
     *
 | 
			
		||||
     * @see    http://docs.php.net/glob
 | 
			
		||||
     * @param  string  $pattern
 | 
			
		||||
     * @param  int $flags
 | 
			
		||||
     * @param  bool $forceFallback
 | 
			
		||||
     * @return array
 | 
			
		||||
     * @throws Exception\RuntimeException
 | 
			
		||||
     */
 | 
			
		||||
    public static function glob($pattern, $flags = 0, $forceFallback = false)
 | 
			
		||||
    {
 | 
			
		||||
        if (!defined('GLOB_BRACE') || $forceFallback) {
 | 
			
		||||
            return static::fallbackGlob($pattern, $flags);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return static::systemGlob($pattern, $flags);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Use the glob function provided by the system.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string  $pattern
 | 
			
		||||
     * @param  int     $flags
 | 
			
		||||
     * @return array
 | 
			
		||||
     * @throws Exception\RuntimeException
 | 
			
		||||
     */
 | 
			
		||||
    protected static function systemGlob($pattern, $flags)
 | 
			
		||||
    {
 | 
			
		||||
        if ($flags) {
 | 
			
		||||
            $flagMap = [
 | 
			
		||||
                self::GLOB_MARK     => GLOB_MARK,
 | 
			
		||||
                self::GLOB_NOSORT   => GLOB_NOSORT,
 | 
			
		||||
                self::GLOB_NOCHECK  => GLOB_NOCHECK,
 | 
			
		||||
                self::GLOB_NOESCAPE => GLOB_NOESCAPE,
 | 
			
		||||
                self::GLOB_BRACE    => defined('GLOB_BRACE') ? GLOB_BRACE : 0,
 | 
			
		||||
                self::GLOB_ONLYDIR  => GLOB_ONLYDIR,
 | 
			
		||||
                self::GLOB_ERR      => GLOB_ERR,
 | 
			
		||||
            ];
 | 
			
		||||
 | 
			
		||||
            $globFlags = 0;
 | 
			
		||||
 | 
			
		||||
            foreach ($flagMap as $internalFlag => $globFlag) {
 | 
			
		||||
                if ($flags & $internalFlag) {
 | 
			
		||||
                    $globFlags |= $globFlag;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        } else {
 | 
			
		||||
            $globFlags = 0;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        ErrorHandler::start();
 | 
			
		||||
        $res = glob($pattern, $globFlags);
 | 
			
		||||
        $err = ErrorHandler::stop();
 | 
			
		||||
        if ($res === false) {
 | 
			
		||||
            throw new Exception\RuntimeException("glob('{$pattern}', {$globFlags}) failed", 0, $err);
 | 
			
		||||
        }
 | 
			
		||||
        return $res;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Expand braces manually, then use the system glob.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string  $pattern
 | 
			
		||||
     * @param  int     $flags
 | 
			
		||||
     * @return array
 | 
			
		||||
     * @throws Exception\RuntimeException
 | 
			
		||||
     */
 | 
			
		||||
    protected static function fallbackGlob($pattern, $flags)
 | 
			
		||||
    {
 | 
			
		||||
        if (!$flags & self::GLOB_BRACE) {
 | 
			
		||||
            return static::systemGlob($pattern, $flags);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $flags &= ~self::GLOB_BRACE;
 | 
			
		||||
        $length = strlen($pattern);
 | 
			
		||||
        $paths  = [];
 | 
			
		||||
 | 
			
		||||
        if ($flags & self::GLOB_NOESCAPE) {
 | 
			
		||||
            $begin = strpos($pattern, '{');
 | 
			
		||||
        } else {
 | 
			
		||||
            $begin = 0;
 | 
			
		||||
 | 
			
		||||
            while (true) {
 | 
			
		||||
                if ($begin === $length) {
 | 
			
		||||
                    $begin = false;
 | 
			
		||||
                    break;
 | 
			
		||||
                } elseif ($pattern[$begin] === '\\' && ($begin + 1) < $length) {
 | 
			
		||||
                    $begin++;
 | 
			
		||||
                } elseif ($pattern[$begin] === '{') {
 | 
			
		||||
                    break;
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                $begin++;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ($begin === false) {
 | 
			
		||||
            return static::systemGlob($pattern, $flags);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $next = static::nextBraceSub($pattern, $begin + 1, $flags);
 | 
			
		||||
 | 
			
		||||
        if ($next === null) {
 | 
			
		||||
            return static::systemGlob($pattern, $flags);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $rest = $next;
 | 
			
		||||
 | 
			
		||||
        while ($pattern[$rest] !== '}') {
 | 
			
		||||
            $rest = static::nextBraceSub($pattern, $rest + 1, $flags);
 | 
			
		||||
 | 
			
		||||
            if ($rest === null) {
 | 
			
		||||
                return static::systemGlob($pattern, $flags);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $p = $begin + 1;
 | 
			
		||||
 | 
			
		||||
        while (true) {
 | 
			
		||||
            $subPattern = substr($pattern, 0, $begin)
 | 
			
		||||
                        . substr($pattern, $p, $next - $p)
 | 
			
		||||
                        . substr($pattern, $rest + 1);
 | 
			
		||||
 | 
			
		||||
            $result = static::fallbackGlob($subPattern, $flags | self::GLOB_BRACE);
 | 
			
		||||
 | 
			
		||||
            if ($result) {
 | 
			
		||||
                $paths = array_merge($paths, $result);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if ($pattern[$next] === '}') {
 | 
			
		||||
                break;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            $p    = $next + 1;
 | 
			
		||||
            $next = static::nextBraceSub($pattern, $p, $flags);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return array_unique($paths);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Find the end of the sub-pattern in a brace expression.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string  $pattern
 | 
			
		||||
     * @param  int $begin
 | 
			
		||||
     * @param  int $flags
 | 
			
		||||
     * @return int|null
 | 
			
		||||
     */
 | 
			
		||||
    protected static function nextBraceSub($pattern, $begin, $flags)
 | 
			
		||||
    {
 | 
			
		||||
        $length  = strlen($pattern);
 | 
			
		||||
        $depth   = 0;
 | 
			
		||||
        $current = $begin;
 | 
			
		||||
 | 
			
		||||
        while ($current < $length) {
 | 
			
		||||
            if (!$flags & self::GLOB_NOESCAPE && $pattern[$current] === '\\') {
 | 
			
		||||
                if (++$current === $length) {
 | 
			
		||||
                    break;
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                $current++;
 | 
			
		||||
            } else {
 | 
			
		||||
                if (($pattern[$current] === '}' && $depth-- === 0) || ($pattern[$current] === ',' && $depth === 0)) {
 | 
			
		||||
                    break;
 | 
			
		||||
                } elseif ($pattern[$current++] === '{') {
 | 
			
		||||
                    $depth++;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return ($current < $length ? $current : null);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										20
									
								
								vendor/zendframework/zend-stdlib/src/Guard/AllGuardsTrait.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								vendor/zendframework/zend-stdlib/src/Guard/AllGuardsTrait.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,20 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Guard;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * An aggregate for all guard traits
 | 
			
		||||
 */
 | 
			
		||||
trait AllGuardsTrait
 | 
			
		||||
{
 | 
			
		||||
    use ArrayOrTraversableGuardTrait;
 | 
			
		||||
    use EmptyGuardTrait;
 | 
			
		||||
    use NullGuardTrait;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										41
									
								
								vendor/zendframework/zend-stdlib/src/Guard/ArrayOrTraversableGuardTrait.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								vendor/zendframework/zend-stdlib/src/Guard/ArrayOrTraversableGuardTrait.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,41 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Guard;
 | 
			
		||||
 | 
			
		||||
use Traversable;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Provide a guard method for array or Traversable data
 | 
			
		||||
 */
 | 
			
		||||
trait ArrayOrTraversableGuardTrait
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Verifies that the data is an array or Traversable
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed  $data           the data to verify
 | 
			
		||||
     * @param  string $dataName       the data name
 | 
			
		||||
     * @param  string $exceptionClass FQCN for the exception
 | 
			
		||||
     * @throws \Exception
 | 
			
		||||
     */
 | 
			
		||||
    protected function guardForArrayOrTraversable(
 | 
			
		||||
        $data,
 | 
			
		||||
        $dataName = 'Argument',
 | 
			
		||||
        $exceptionClass = 'Zend\Stdlib\Exception\InvalidArgumentException'
 | 
			
		||||
    ) {
 | 
			
		||||
        if (!is_array($data) && !($data instanceof Traversable)) {
 | 
			
		||||
            $message = sprintf(
 | 
			
		||||
                "%s must be an array or Traversable, [%s] given",
 | 
			
		||||
                $dataName,
 | 
			
		||||
                is_object($data) ? get_class($data) : gettype($data)
 | 
			
		||||
            );
 | 
			
		||||
            throw new $exceptionClass($message);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										35
									
								
								vendor/zendframework/zend-stdlib/src/Guard/EmptyGuardTrait.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								vendor/zendframework/zend-stdlib/src/Guard/EmptyGuardTrait.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,35 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Guard;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Provide a guard method against empty data
 | 
			
		||||
 */
 | 
			
		||||
trait EmptyGuardTrait
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Verify that the data is not empty
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed  $data           the data to verify
 | 
			
		||||
     * @param  string $dataName       the data name
 | 
			
		||||
     * @param  string $exceptionClass FQCN for the exception
 | 
			
		||||
     * @throws \Exception
 | 
			
		||||
     */
 | 
			
		||||
    protected function guardAgainstEmpty(
 | 
			
		||||
        $data,
 | 
			
		||||
        $dataName = 'Argument',
 | 
			
		||||
        $exceptionClass = 'Zend\Stdlib\Exception\InvalidArgumentException'
 | 
			
		||||
    ) {
 | 
			
		||||
        if (empty($data)) {
 | 
			
		||||
            $message = sprintf('%s cannot be empty', $dataName);
 | 
			
		||||
            throw new $exceptionClass($message);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										85
									
								
								vendor/zendframework/zend-stdlib/src/Guard/GuardUtils.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										85
									
								
								vendor/zendframework/zend-stdlib/src/Guard/GuardUtils.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,85 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Guard;
 | 
			
		||||
 | 
			
		||||
use Traversable;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Static guard helper class
 | 
			
		||||
 *
 | 
			
		||||
 * Bridges the gap for allowing refactoring until traits can be used by default.
 | 
			
		||||
 *
 | 
			
		||||
 * @deprecated
 | 
			
		||||
 */
 | 
			
		||||
abstract class GuardUtils
 | 
			
		||||
{
 | 
			
		||||
    const DEFAULT_EXCEPTION_CLASS = 'Zend\Stdlib\Exception\InvalidArgumentException';
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Verifies that the data is an array or Traversable
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed  $data           the data to verify
 | 
			
		||||
     * @param  string $dataName       the data name
 | 
			
		||||
     * @param  string $exceptionClass FQCN for the exception
 | 
			
		||||
     * @throws \Exception
 | 
			
		||||
     */
 | 
			
		||||
    public static function guardForArrayOrTraversable(
 | 
			
		||||
        $data,
 | 
			
		||||
        $dataName = 'Argument',
 | 
			
		||||
        $exceptionClass = self::DEFAULT_EXCEPTION_CLASS
 | 
			
		||||
    ) {
 | 
			
		||||
        if (!is_array($data) && !($data instanceof Traversable)) {
 | 
			
		||||
            $message = sprintf(
 | 
			
		||||
                '%s must be an array or Traversable, [%s] given',
 | 
			
		||||
                $dataName,
 | 
			
		||||
                is_object($data) ? get_class($data) : gettype($data)
 | 
			
		||||
            );
 | 
			
		||||
            throw new $exceptionClass($message);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Verify that the data is not empty
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed  $data           the data to verify
 | 
			
		||||
     * @param  string $dataName       the data name
 | 
			
		||||
     * @param  string $exceptionClass FQCN for the exception
 | 
			
		||||
     * @throws \Exception
 | 
			
		||||
     */
 | 
			
		||||
    public static function guardAgainstEmpty(
 | 
			
		||||
        $data,
 | 
			
		||||
        $dataName = 'Argument',
 | 
			
		||||
        $exceptionClass = self::DEFAULT_EXCEPTION_CLASS
 | 
			
		||||
    ) {
 | 
			
		||||
        if (empty($data)) {
 | 
			
		||||
            $message = sprintf('%s cannot be empty', $dataName);
 | 
			
		||||
            throw new $exceptionClass($message);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Verify that the data is not null
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed  $data           the data to verify
 | 
			
		||||
     * @param  string $dataName       the data name
 | 
			
		||||
     * @param  string $exceptionClass FQCN for the exception
 | 
			
		||||
     * @throws \Exception
 | 
			
		||||
     */
 | 
			
		||||
    public static function guardAgainstNull(
 | 
			
		||||
        $data,
 | 
			
		||||
        $dataName = 'Argument',
 | 
			
		||||
        $exceptionClass = self::DEFAULT_EXCEPTION_CLASS
 | 
			
		||||
    ) {
 | 
			
		||||
        if (null === $data) {
 | 
			
		||||
            $message = sprintf('%s cannot be null', $dataName);
 | 
			
		||||
            throw new $exceptionClass($message);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										35
									
								
								vendor/zendframework/zend-stdlib/src/Guard/NullGuardTrait.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								vendor/zendframework/zend-stdlib/src/Guard/NullGuardTrait.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,35 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Guard;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Provide a guard method against null data
 | 
			
		||||
 */
 | 
			
		||||
trait NullGuardTrait
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Verify that the data is not null
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed  $data           the data to verify
 | 
			
		||||
     * @param  string $dataName       the data name
 | 
			
		||||
     * @param  string $exceptionClass FQCN for the exception
 | 
			
		||||
     * @throws \Exception
 | 
			
		||||
     */
 | 
			
		||||
    protected function guardAgainstNull(
 | 
			
		||||
        $data,
 | 
			
		||||
        $dataName = 'Argument',
 | 
			
		||||
        $exceptionClass = 'Zend\Stdlib\Exception\InvalidArgumentException'
 | 
			
		||||
    ) {
 | 
			
		||||
        if (null === $data) {
 | 
			
		||||
            $message = sprintf('%s cannot be null', $dataName);
 | 
			
		||||
            throw new $exceptionClass($message);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/AbstractHydrator.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/AbstractHydrator.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\AbstractHydrator as BaseAbstractHydrator;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\AbstractHydrator from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
abstract class AbstractHydrator extends BaseAbstractHydrator implements HydratorInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										45
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Aggregate/AggregateHydrator.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Aggregate/AggregateHydrator.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,45 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Aggregate;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Aggregate\AggregateHydrator as BaseAggregateHydrator;
 | 
			
		||||
use Zend\Stdlib\Hydrator\HydratorInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Aggregate hydrator that composes multiple hydrators via events
 | 
			
		||||
 *
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Aggregate\AggregateHydrator from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class AggregateHydrator extends BaseAggregateHydrator implements HydratorInterface
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * {@inheritDoc}
 | 
			
		||||
     */
 | 
			
		||||
    public function extract($object)
 | 
			
		||||
    {
 | 
			
		||||
        $event = new ExtractEvent($this, $object);
 | 
			
		||||
 | 
			
		||||
        $this->getEventManager()->triggerEvent($event);
 | 
			
		||||
 | 
			
		||||
        return $event->getExtractedData();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * {@inheritDoc}
 | 
			
		||||
     */
 | 
			
		||||
    public function hydrate(array $data, $object)
 | 
			
		||||
    {
 | 
			
		||||
        $event = new HydrateEvent($this, $object, $data);
 | 
			
		||||
 | 
			
		||||
        $this->getEventManager()->triggerEvent($event);
 | 
			
		||||
 | 
			
		||||
        return $event->getHydratedObject();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										22
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Aggregate/ExtractEvent.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Aggregate/ExtractEvent.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Aggregate;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Aggregate\ExtractEvent as BaseExtractEvent;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Event triggered when the {@see \Zend\Stdlib\Hydrator\Aggregate\AggregateHydrator} extracts
 | 
			
		||||
 * data from an object
 | 
			
		||||
 *
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Aggregate\ExtractEvent from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class ExtractEvent extends BaseExtractEvent
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										22
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Aggregate/HydrateEvent.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Aggregate/HydrateEvent.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Aggregate;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Aggregate\HydrateEvent as BaseHydrateEvent;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Event triggered when the {@see \Zend\Stdlib\Hydrator\Aggregate\AggregateHydrator} hydrates
 | 
			
		||||
 * data into an object
 | 
			
		||||
 *
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Aggregate\HydrateEvent from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class HydrateEvent extends BaseHydrateEvent
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										23
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Aggregate/HydratorListener.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Aggregate/HydratorListener.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,23 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Aggregate;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Aggregate\HydratorListener as BaseHydratorListener;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Aggregate listener wrapping around a hydrator. Listens
 | 
			
		||||
 * to {@see \Zend\Stdlib\Hydrator\Aggregate::EVENT_HYDRATE} and
 | 
			
		||||
 * {@see \Zend\Stdlib\Hydrator\Aggregate::EVENT_EXTRACT}
 | 
			
		||||
 *
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Aggregate\HydratorListener from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class HydratorListener extends BaseHydratorListener
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/ArraySerializable.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/ArraySerializable.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\ArraySerializable as BaseArraySerializable;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\ArraySerializable from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class ArraySerializable extends BaseArraySerializable implements HydratorInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/ClassMethods.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/ClassMethods.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\ClassMethods as BaseClassMethods;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\ClassMethods from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class ClassMethods extends BaseClassMethods implements HydratorInterface, HydratorOptionsInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/DelegatingHydrator.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/DelegatingHydrator.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\DelegatingHydrator as BaseDelegatingHydrator;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\DelegatingHydrator from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class DelegatingHydrator extends BaseDelegatingHydrator implements HydratorInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										26
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/DelegatingHydratorFactory.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/DelegatingHydratorFactory.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,26 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\ServiceManager\FactoryInterface;
 | 
			
		||||
use Zend\ServiceManager\ServiceLocatorInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\DelegatingHydratorFactory from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class DelegatingHydratorFactory implements FactoryInterface
 | 
			
		||||
{
 | 
			
		||||
    public function createService(ServiceLocatorInterface $serviceLocator)
 | 
			
		||||
    {
 | 
			
		||||
        // Assume that this factory is registered with the HydratorManager,
 | 
			
		||||
        // and just pass it directly on.
 | 
			
		||||
        return new DelegatingHydrator($serviceLocator);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/FilterComposite.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/FilterComposite.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link           http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright      Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license        http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Filter;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Filter\FilterComposite as BaseFilterComposite;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Filter\FilterComposite from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class FilterComposite extends BaseFilterComposite implements FilterInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/FilterInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/FilterInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link           http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright      Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license        http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Filter;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Filter\FilterInterface as BaseFilterInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Filter\FilterInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface FilterInterface extends BaseFilterInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/FilterProviderInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/FilterProviderInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link           http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright      Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license        http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Filter;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Filter\FilterProviderInterface as BaseFilterProviderInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Filter\FilterProviderInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface FilterProviderInterface extends BaseFilterProviderInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/GetFilter.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/GetFilter.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link           http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright      Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license        http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Filter;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Filter\GetFilter as BaseGetFilter;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Filter\GetFilter from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class GetFilter extends BaseGetFilter implements FilterInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/HasFilter.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/HasFilter.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link           http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright      Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license        http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Filter;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Filter\HasFilter as BaseHasFilter;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Filter\HasFilter from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class HasFilter extends BaseHasFilter implements FilterInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/IsFilter.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/IsFilter.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link           http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright      Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license        http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Filter;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Filter\IsFilter as BaseIsFilter;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Filter\IsFilter from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class IsFilter extends BaseIsFilter implements FilterInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/MethodMatchFilter.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/MethodMatchFilter.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link           http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright      Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license        http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Filter;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Filter\MethodMatchFilter as BaseMethodMatchFilter;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Filter\MethodMatchFilter from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class MethodMatchFilter extends BaseMethodMatchFilter implements FilterInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/NumberOfParameterFilter.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/NumberOfParameterFilter.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link           http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright      Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license        http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Filter;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Filter\NumberOfParameterFilter as BaseNumberOfParameterFilter;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Filter\NumberOfParameterFilter from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class NumberOfParameterFilter extends BaseNumberOfParameterFilter implements FilterInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										20
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/OptionalParametersFilter.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Filter/OptionalParametersFilter.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,20 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link           http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright      Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license        http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Filter;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Filter\OptionalParametersFilter as BaseOptionalParametersFilter;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Filter that includes methods which have no parameters or only optional parameters
 | 
			
		||||
 *
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Filter\OptionalParametersFilter from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class OptionalParametersFilter extends BaseOptionalParametersFilter implements FilterInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/FilterEnabledInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/FilterEnabledInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\FilterEnabledInterface as BaseFilterEnabledInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\FilterEnabledInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface FilterEnabledInterface extends BaseFilterEnabledInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/HydrationInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/HydrationInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\HydrationInterface as BaseHydrationInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\HydrationInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface HydrationInterface extends BaseHydrationInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/HydratorAwareInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/HydratorAwareInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\HydratorAwareInterface as BaseHydratorAwareInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\HydratorAwareInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface HydratorAwareInterface extends BaseHydratorAwareInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										20
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/HydratorAwareTrait.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/HydratorAwareTrait.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,20 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\HydratorAwareTrait as BaseHydratorAwareTrait;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\HydratorAwareTrait from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
trait HydratorAwareTrait
 | 
			
		||||
{
 | 
			
		||||
    use BaseHydratorAwareTrait;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										20
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/HydratorInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/HydratorInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,20 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Stdlib\Extractor\ExtractionInterface;
 | 
			
		||||
use Zend\Hydrator\HydratorInterface as BaseHydratorInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\HydratorInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface HydratorInterface extends BaseHydratorInterface, HydrationInterface, ExtractionInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/HydratorOptionsInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/HydratorOptionsInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\HydratorOptionsInterface as BaseHydratorOptionsInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\HydratorOptionsInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface HydratorOptionsInterface extends BaseHydratorOptionsInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										53
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/HydratorPluginManager.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/HydratorPluginManager.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,53 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\HydratorPluginManager as BaseHydratorPluginManager;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Plugin manager implementation for hydrators.
 | 
			
		||||
 *
 | 
			
		||||
 * Enforces that adapters retrieved are instances of HydratorInterface
 | 
			
		||||
 *
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\HydratorPluginManager from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class HydratorPluginManager extends BaseHydratorPluginManager
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Default aliases
 | 
			
		||||
     *
 | 
			
		||||
     * @var array
 | 
			
		||||
     */
 | 
			
		||||
    protected $aliases = [
 | 
			
		||||
        'delegatinghydrator' => 'Zend\Stdlib\Hydrator\DelegatingHydrator',
 | 
			
		||||
    ];
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Default set of adapters
 | 
			
		||||
     *
 | 
			
		||||
     * @var array
 | 
			
		||||
     */
 | 
			
		||||
    protected $invokableClasses = [
 | 
			
		||||
        'arrayserializable' => 'Zend\Stdlib\Hydrator\ArraySerializable',
 | 
			
		||||
        'classmethods'      => 'Zend\Stdlib\Hydrator\ClassMethods',
 | 
			
		||||
        'objectproperty'    => 'Zend\Stdlib\Hydrator\ObjectProperty',
 | 
			
		||||
        'reflection'        => 'Zend\Stdlib\Hydrator\Reflection'
 | 
			
		||||
    ];
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Default factory-based adapters
 | 
			
		||||
     *
 | 
			
		||||
     * @var array
 | 
			
		||||
     */
 | 
			
		||||
    protected $factories = [
 | 
			
		||||
        'Zend\Stdlib\Hydrator\DelegatingHydrator' => 'Zend\Stdlib\Hydrator\DelegatingHydratorFactory',
 | 
			
		||||
        'zendstdlibhydratordelegatinghydrator'    => 'Zend\Stdlib\Hydrator\DelegatingHydratorFactory',
 | 
			
		||||
    ];
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Iterator/HydratingArrayIterator.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Iterator/HydratingArrayIterator.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Iterator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Iterator\HydratingArrayIterator as BaseHydratingArrayIterator;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Iterator\HydratingArrayIterator from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class HydratingArrayIterator extends BaseHydratingArrayIterator implements HydratingIteratorInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Iterator/HydratingIteratorInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Iterator/HydratingIteratorInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Iterator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Iterator\HydratingIteratorInterface as BaseHydratingIteratorInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Iterator\HydratingIteratorInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface HydratingIteratorInterface extends BaseHydratingIteratorInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Iterator/HydratingIteratorIterator.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Iterator/HydratingIteratorIterator.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Iterator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Iterator\HydratingIteratorIterator as BaseHydratingIteratorIterator;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Iterator\HydratingIteratorIterator from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class HydratingIteratorIterator extends BaseHydratingIteratorIterator implements HydratingIteratorInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategy/ArrayMapNamingStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategy/ArrayMapNamingStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\NamingStrategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\NamingStrategy\ArrayMapNamingStrategy as BaseArrayMapNamingStrategy;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\NamingStrategy\ArrayMapNamingStrategy from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class ArrayMapNamingStrategy extends BaseArrayMapNamingStrategy implements NamingStrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategy/CompositeNamingStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategy/CompositeNamingStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\NamingStrategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\NamingStrategy\CompositeNamingStrategy as BaseCompositeNamingStrategy;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\NamingStrategy\CompositeNamingStrategy from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class CompositeNamingStrategy extends BaseCompositeNamingStrategy implements NamingStrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategy/IdentityNamingStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategy/IdentityNamingStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\NamingStrategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\NamingStrategy\IdentityNamingStrategy as BaseIdentityNamingStrategy;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\NamingStrategy\IdentityNamingStrategy from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class IdentityNamingStrategy extends BaseIdentityNamingStrategy implements NamingStrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategy/MapNamingStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategy/MapNamingStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\NamingStrategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\NamingStrategy\MapNamingStrategy as BaseMapNamingStrategy;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\NamingStrategy\MapNamingStrategy from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class MapNamingStrategy extends BaseMapNamingStrategy implements NamingStrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										21
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategy/NamingStrategyInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategy/NamingStrategyInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,21 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\NamingStrategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\NamingStrategy\NamingStrategyInterface as BaseNamingStrategyInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Allow property extraction / hydration for hydrator
 | 
			
		||||
 *
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\NamingStrategy\NamingStrategyInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface NamingStrategyInterface extends BaseNamingStrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategy/UnderscoreNamingStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategy/UnderscoreNamingStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\NamingStrategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\NamingStrategy\UnderscoreNamingStrategy as BaseUnderscoreNamingStrategy;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\NamingStrategy\UnderscoreNamingStrategy from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class UnderscoreNamingStrategy extends BaseUnderscoreNamingStrategy implements NamingStrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategyEnabledInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/NamingStrategyEnabledInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\NamingStrategyEnabledInterface as BaseNamingStrategyEnabledInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\NamingStrategy\NamingStrategyEnabledInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface NamingStrategyEnabledInterface extends BaseNamingStrategyEnabledInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/ObjectProperty.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/ObjectProperty.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\ObjectProperty as BaseObjectProperty;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\ObjectProperty from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class ObjectProperty extends BaseObjectProperty implements HydratorInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Reflection.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Reflection.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Reflection as BaseReflection;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Reflection from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class Reflection extends BaseReflection implements HydratorInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										21
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/BooleanStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/BooleanStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,21 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Strategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Strategy\BooleanStrategy as BaseBooleanStrategy;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * This Strategy extracts and hydrates int and string values to Boolean values
 | 
			
		||||
 *
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Strategy\BooleanStrategy from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class BooleanStrategy extends BaseBooleanStrategy implements StrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/ClosureStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/ClosureStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Strategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Strategy\ClosureStrategy as BaseClosureStrategy;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Strategy\ClosureStrategy from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class ClosureStrategy extends BaseClosureStrategy implements StrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/DateTimeFormatterStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/DateTimeFormatterStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Strategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Strategy\DateTimeFormatterStrategy as BaseDateTimeFormatterStrategy;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Strategy\DateTimeFormatterStrategy from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class DateTimeFormatterStrategy extends BaseDateTimeFormatterStrategy implements StrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/DefaultStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/DefaultStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Strategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Strategy\DefaultStrategy as BaseDefaultStrategy;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Strategy\DefaultStrategy from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class DefaultStrategy extends BaseDefaultStrategy implements StrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/Exception/ExceptionInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/Exception/ExceptionInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Strategy\Exception;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Strategy\Exception;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Strategy\Exception\ExceptionInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface ExceptionInterface extends Exception\ExceptionInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/Exception/InvalidArgumentException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/Exception/InvalidArgumentException.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Strategy\Exception;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Strategy\Exception\InvalidArgumentException as BaseInvalidArgumentException;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Strategy\Exception\InvalidArgumentException from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class InvalidArgumentException extends BaseInvalidArgumentException implements ExceptionInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/ExplodeStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/ExplodeStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Strategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Strategy\ExplodeStrategy as BaseExplodeStrategy;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Strategy\ExplodeStrategy from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class ExplodeStrategy extends BaseExplodeStrategy implements StrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/SerializableStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/SerializableStrategy.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Strategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Strategy\SerializableStrategy as BaseSerializableStrategy;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Strategy\SerializableStrategy from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class SerializableStrategy extends BaseSerializableStrategy implements StrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/StrategyChain.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/StrategyChain.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Strategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Strategy\StrategyChain as BaseStrategyChain;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Strategy\StrategyChain from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
class StrategyChain extends BaseStrategyChain implements StrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/StrategyInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/Strategy/StrategyInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator\Strategy;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\Strategy\StrategyInterface as BaseStrategyInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Strategy\StrategyInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface StrategyInterface extends BaseStrategyInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/StrategyEnabledInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								vendor/zendframework/zend-stdlib/src/Hydrator/StrategyEnabledInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\Hydrator;
 | 
			
		||||
 | 
			
		||||
use Zend\Hydrator\StrategyEnabledInterface as BaseStrategyEnabledInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @deprecated Use Zend\Hydrator\Strategy\StrategyEnabledInterface from zendframework/zend-hydrator instead.
 | 
			
		||||
 */
 | 
			
		||||
interface StrategyEnabledInterface extends BaseStrategyEnabledInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										23
									
								
								vendor/zendframework/zend-stdlib/src/InitializableInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								vendor/zendframework/zend-stdlib/src/InitializableInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,23 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Interface to allow objects to have initialization logic
 | 
			
		||||
 */
 | 
			
		||||
interface InitializableInterface
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Init an object
 | 
			
		||||
     *
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function init();
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										14
									
								
								vendor/zendframework/zend-stdlib/src/JsonSerializable.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								vendor/zendframework/zend-stdlib/src/JsonSerializable.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
interface JsonSerializable extends \JsonSerializable
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										118
									
								
								vendor/zendframework/zend-stdlib/src/Message.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										118
									
								
								vendor/zendframework/zend-stdlib/src/Message.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,118 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use Traversable;
 | 
			
		||||
 | 
			
		||||
class Message implements MessageInterface
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * @var array
 | 
			
		||||
     */
 | 
			
		||||
    protected $metadata = [];
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @var string
 | 
			
		||||
     */
 | 
			
		||||
    protected $content = '';
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Set message metadata
 | 
			
		||||
     *
 | 
			
		||||
     * Non-destructive setting of message metadata; always adds to the metadata, never overwrites
 | 
			
		||||
     * the entire metadata container.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string|int|array|Traversable $spec
 | 
			
		||||
     * @param  mixed $value
 | 
			
		||||
     * @throws Exception\InvalidArgumentException
 | 
			
		||||
     * @return Message
 | 
			
		||||
     */
 | 
			
		||||
    public function setMetadata($spec, $value = null)
 | 
			
		||||
    {
 | 
			
		||||
        if (is_scalar($spec)) {
 | 
			
		||||
            $this->metadata[$spec] = $value;
 | 
			
		||||
            return $this;
 | 
			
		||||
        }
 | 
			
		||||
        if (!is_array($spec) && !$spec instanceof Traversable) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException(sprintf(
 | 
			
		||||
                'Expected a string, array, or Traversable argument in first position; received "%s"',
 | 
			
		||||
                (is_object($spec) ? get_class($spec) : gettype($spec))
 | 
			
		||||
            ));
 | 
			
		||||
        }
 | 
			
		||||
        foreach ($spec as $key => $value) {
 | 
			
		||||
            $this->metadata[$key] = $value;
 | 
			
		||||
        }
 | 
			
		||||
        return $this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Retrieve all metadata or a single metadatum as specified by key
 | 
			
		||||
     *
 | 
			
		||||
     * @param  null|string|int $key
 | 
			
		||||
     * @param  null|mixed $default
 | 
			
		||||
     * @throws Exception\InvalidArgumentException
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function getMetadata($key = null, $default = null)
 | 
			
		||||
    {
 | 
			
		||||
        if (null === $key) {
 | 
			
		||||
            return $this->metadata;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (!is_scalar($key)) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException('Non-scalar argument provided for key');
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (array_key_exists($key, $this->metadata)) {
 | 
			
		||||
            return $this->metadata[$key];
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $default;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Set message content
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $value
 | 
			
		||||
     * @return Message
 | 
			
		||||
     */
 | 
			
		||||
    public function setContent($value)
 | 
			
		||||
    {
 | 
			
		||||
        $this->content = $value;
 | 
			
		||||
        return $this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get message content
 | 
			
		||||
     *
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function getContent()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->content;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function toString()
 | 
			
		||||
    {
 | 
			
		||||
        $request = '';
 | 
			
		||||
        foreach ($this->getMetadata() as $key => $value) {
 | 
			
		||||
            $request .= sprintf(
 | 
			
		||||
                "%s: %s\r\n",
 | 
			
		||||
                (string) $key,
 | 
			
		||||
                (string) $value
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
        $request .= "\r\n" . $this->getContent();
 | 
			
		||||
        return $request;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										44
									
								
								vendor/zendframework/zend-stdlib/src/MessageInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								vendor/zendframework/zend-stdlib/src/MessageInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,44 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
interface MessageInterface
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Set metadata
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string|int|array|\Traversable $spec
 | 
			
		||||
     * @param  mixed $value
 | 
			
		||||
     */
 | 
			
		||||
    public function setMetadata($spec, $value = null);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get metadata
 | 
			
		||||
     *
 | 
			
		||||
     * @param  null|string|int $key
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function getMetadata($key = null);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Set content
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $content
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function setContent($content);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get content
 | 
			
		||||
     *
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function getContent();
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										38
									
								
								vendor/zendframework/zend-stdlib/src/ParameterObjectInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								vendor/zendframework/zend-stdlib/src/ParameterObjectInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,38 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
interface ParameterObjectInterface
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * @param string $key
 | 
			
		||||
     * @param mixed $value
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function __set($key, $value);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @param string $key
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function __get($key);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @param string $key
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public function __isset($key);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @param string $key
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function __unset($key);
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										115
									
								
								vendor/zendframework/zend-stdlib/src/Parameters.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										115
									
								
								vendor/zendframework/zend-stdlib/src/Parameters.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,115 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use ArrayObject as PhpArrayObject;
 | 
			
		||||
 | 
			
		||||
class Parameters extends PhpArrayObject implements ParametersInterface
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Constructor
 | 
			
		||||
     *
 | 
			
		||||
     * Enforces that we have an array, and enforces parameter access to array
 | 
			
		||||
     * elements.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  array $values
 | 
			
		||||
     */
 | 
			
		||||
    public function __construct(array $values = null)
 | 
			
		||||
    {
 | 
			
		||||
        if (null === $values) {
 | 
			
		||||
            $values = [];
 | 
			
		||||
        }
 | 
			
		||||
        parent::__construct($values, ArrayObject::ARRAY_AS_PROPS);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Populate from native PHP array
 | 
			
		||||
     *
 | 
			
		||||
     * @param  array $values
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function fromArray(array $values)
 | 
			
		||||
    {
 | 
			
		||||
        $this->exchangeArray($values);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Populate from query string
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $string
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function fromString($string)
 | 
			
		||||
    {
 | 
			
		||||
        $array = [];
 | 
			
		||||
        parse_str($string, $array);
 | 
			
		||||
        $this->fromArray($array);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Serialize to native PHP array
 | 
			
		||||
     *
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public function toArray()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->getArrayCopy();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Serialize to query string
 | 
			
		||||
     *
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function toString()
 | 
			
		||||
    {
 | 
			
		||||
        return http_build_query($this);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Retrieve by key
 | 
			
		||||
     *
 | 
			
		||||
     * Returns null if the key does not exist.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $name
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function offsetGet($name)
 | 
			
		||||
    {
 | 
			
		||||
        if ($this->offsetExists($name)) {
 | 
			
		||||
            return parent::offsetGet($name);
 | 
			
		||||
        }
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @param string $name
 | 
			
		||||
     * @param mixed $default optional default value
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function get($name, $default = null)
 | 
			
		||||
    {
 | 
			
		||||
        if ($this->offsetExists($name)) {
 | 
			
		||||
            return parent::offsetGet($name);
 | 
			
		||||
        }
 | 
			
		||||
        return $default;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @param string $name
 | 
			
		||||
     * @param mixed $value
 | 
			
		||||
     * @return Parameters
 | 
			
		||||
     */
 | 
			
		||||
    public function set($name, $value)
 | 
			
		||||
    {
 | 
			
		||||
        $this[$name] = $value;
 | 
			
		||||
        return $this;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										86
									
								
								vendor/zendframework/zend-stdlib/src/ParametersInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										86
									
								
								vendor/zendframework/zend-stdlib/src/ParametersInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,86 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use ArrayAccess;
 | 
			
		||||
use Countable;
 | 
			
		||||
use Serializable;
 | 
			
		||||
use Traversable;
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Basically, an ArrayObject. You could simply define something like:
 | 
			
		||||
 *     class QueryParams extends ArrayObject implements Parameters {}
 | 
			
		||||
 * and have 90% of the functionality
 | 
			
		||||
 */
 | 
			
		||||
interface ParametersInterface extends ArrayAccess, Countable, Serializable, Traversable
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Constructor
 | 
			
		||||
     *
 | 
			
		||||
     * @param array $values
 | 
			
		||||
     */
 | 
			
		||||
    public function __construct(array $values = null);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * From array
 | 
			
		||||
     *
 | 
			
		||||
     * Allow deserialization from standard array
 | 
			
		||||
     *
 | 
			
		||||
     * @param array $values
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function fromArray(array $values);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * From string
 | 
			
		||||
     *
 | 
			
		||||
     * Allow deserialization from raw body; e.g., for PUT requests
 | 
			
		||||
     *
 | 
			
		||||
     * @param $string
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function fromString($string);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * To array
 | 
			
		||||
     *
 | 
			
		||||
     * Allow serialization back to standard array
 | 
			
		||||
     *
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function toArray();
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * To string
 | 
			
		||||
     *
 | 
			
		||||
     * Allow serialization to query format; e.g., for PUT or POST requests
 | 
			
		||||
     *
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function toString();
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $name
 | 
			
		||||
     * @param mixed|null $default
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function get($name, $default = null);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Set
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $name
 | 
			
		||||
     * @param mixed $value
 | 
			
		||||
     * @return ParametersInterface
 | 
			
		||||
     */
 | 
			
		||||
    public function set($name, $value);
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										274
									
								
								vendor/zendframework/zend-stdlib/src/PriorityList.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										274
									
								
								vendor/zendframework/zend-stdlib/src/PriorityList.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,274 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use Countable;
 | 
			
		||||
use Iterator;
 | 
			
		||||
 | 
			
		||||
class PriorityList implements Iterator, Countable
 | 
			
		||||
{
 | 
			
		||||
    const EXTR_DATA     = 0x00000001;
 | 
			
		||||
    const EXTR_PRIORITY = 0x00000002;
 | 
			
		||||
    const EXTR_BOTH     = 0x00000003;
 | 
			
		||||
    /**
 | 
			
		||||
     * Internal list of all items.
 | 
			
		||||
     *
 | 
			
		||||
     * @var array[]
 | 
			
		||||
     */
 | 
			
		||||
    protected $items = [];
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Serial assigned to items to preserve LIFO.
 | 
			
		||||
     *
 | 
			
		||||
     * @var int
 | 
			
		||||
     */
 | 
			
		||||
    protected $serial = 0;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Serial order mode
 | 
			
		||||
     * @var integer
 | 
			
		||||
     */
 | 
			
		||||
    protected $isLIFO = 1;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Internal counter to avoid usage of count().
 | 
			
		||||
     *
 | 
			
		||||
     * @var int
 | 
			
		||||
     */
 | 
			
		||||
    protected $count = 0;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Whether the list was already sorted.
 | 
			
		||||
     *
 | 
			
		||||
     * @var bool
 | 
			
		||||
     */
 | 
			
		||||
    protected $sorted = false;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Insert a new item.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string  $name
 | 
			
		||||
     * @param  mixed   $value
 | 
			
		||||
     * @param  int     $priority
 | 
			
		||||
     *
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function insert($name, $value, $priority = 0)
 | 
			
		||||
    {
 | 
			
		||||
        if (!isset($this->items[$name])) {
 | 
			
		||||
            $this->count++;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $this->sorted = false;
 | 
			
		||||
 | 
			
		||||
        $this->items[$name] = [
 | 
			
		||||
            'data'     => $value,
 | 
			
		||||
            'priority' => (int) $priority,
 | 
			
		||||
            'serial'   => $this->serial++,
 | 
			
		||||
        ];
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @param string $name
 | 
			
		||||
     * @param int    $priority
 | 
			
		||||
     *
 | 
			
		||||
     * @return $this
 | 
			
		||||
     *
 | 
			
		||||
     * @throws \Exception
 | 
			
		||||
     */
 | 
			
		||||
    public function setPriority($name, $priority)
 | 
			
		||||
    {
 | 
			
		||||
        if (!isset($this->items[$name])) {
 | 
			
		||||
            throw new \Exception("item $name not found");
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $this->items[$name]['priority'] = (int) $priority;
 | 
			
		||||
        $this->sorted                   = false;
 | 
			
		||||
 | 
			
		||||
        return $this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Remove a item.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $name
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function remove($name)
 | 
			
		||||
    {
 | 
			
		||||
        if (isset($this->items[$name])) {
 | 
			
		||||
            $this->count--;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        unset($this->items[$name]);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Remove all items.
 | 
			
		||||
     *
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function clear()
 | 
			
		||||
    {
 | 
			
		||||
        $this->items  = [];
 | 
			
		||||
        $this->serial = 0;
 | 
			
		||||
        $this->count  = 0;
 | 
			
		||||
        $this->sorted = false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get a item.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $name
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function get($name)
 | 
			
		||||
    {
 | 
			
		||||
        if (!isset($this->items[$name])) {
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $this->items[$name]['data'];
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sort all items.
 | 
			
		||||
     *
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    protected function sort()
 | 
			
		||||
    {
 | 
			
		||||
        if (!$this->sorted) {
 | 
			
		||||
            uasort($this->items, [$this, 'compare']);
 | 
			
		||||
            $this->sorted = true;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Compare the priority of two items.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  array $item1,
 | 
			
		||||
     * @param  array $item2
 | 
			
		||||
     * @return int
 | 
			
		||||
     */
 | 
			
		||||
    protected function compare(array $item1, array $item2)
 | 
			
		||||
    {
 | 
			
		||||
        return ($item1['priority'] === $item2['priority'])
 | 
			
		||||
            ? ($item1['serial']   > $item2['serial']   ? -1 : 1) * $this->isLIFO
 | 
			
		||||
            : ($item1['priority'] > $item2['priority'] ? -1 : 1);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get/Set serial order mode
 | 
			
		||||
     *
 | 
			
		||||
     * @param bool|null $flag
 | 
			
		||||
     *
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public function isLIFO($flag = null)
 | 
			
		||||
    {
 | 
			
		||||
        if ($flag !== null) {
 | 
			
		||||
            $isLifo = $flag === true ? 1 : -1;
 | 
			
		||||
 | 
			
		||||
            if ($isLifo !== $this->isLIFO) {
 | 
			
		||||
                $this->isLIFO = $isLifo;
 | 
			
		||||
                $this->sorted = false;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return 1 === $this->isLIFO;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * {@inheritDoc}
 | 
			
		||||
     */
 | 
			
		||||
    public function rewind()
 | 
			
		||||
    {
 | 
			
		||||
        $this->sort();
 | 
			
		||||
        reset($this->items);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * {@inheritDoc}
 | 
			
		||||
     */
 | 
			
		||||
    public function current()
 | 
			
		||||
    {
 | 
			
		||||
        $this->sorted || $this->sort();
 | 
			
		||||
        $node = current($this->items);
 | 
			
		||||
 | 
			
		||||
        return $node ? $node['data'] : false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * {@inheritDoc}
 | 
			
		||||
     */
 | 
			
		||||
    public function key()
 | 
			
		||||
    {
 | 
			
		||||
        $this->sorted || $this->sort();
 | 
			
		||||
        return key($this->items);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * {@inheritDoc}
 | 
			
		||||
     */
 | 
			
		||||
    public function next()
 | 
			
		||||
    {
 | 
			
		||||
        $node = next($this->items);
 | 
			
		||||
 | 
			
		||||
        return $node ? $node['data'] : false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * {@inheritDoc}
 | 
			
		||||
     */
 | 
			
		||||
    public function valid()
 | 
			
		||||
    {
 | 
			
		||||
        return current($this->items) !== false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * @return self
 | 
			
		||||
     */
 | 
			
		||||
    public function getIterator()
 | 
			
		||||
    {
 | 
			
		||||
        return clone $this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * {@inheritDoc}
 | 
			
		||||
     */
 | 
			
		||||
    public function count()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->count;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Return list as array
 | 
			
		||||
     *
 | 
			
		||||
     * @param int $flag
 | 
			
		||||
     *
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public function toArray($flag = self::EXTR_DATA)
 | 
			
		||||
    {
 | 
			
		||||
        $this->sort();
 | 
			
		||||
 | 
			
		||||
        if ($flag == self::EXTR_BOTH) {
 | 
			
		||||
            return $this->items;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return array_map(
 | 
			
		||||
            function ($item) use ($flag) {
 | 
			
		||||
                return ($flag == PriorityList::EXTR_PRIORITY) ? $item['priority'] : $item['data'];
 | 
			
		||||
            },
 | 
			
		||||
            $this->items
 | 
			
		||||
        );
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										301
									
								
								vendor/zendframework/zend-stdlib/src/PriorityQueue.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										301
									
								
								vendor/zendframework/zend-stdlib/src/PriorityQueue.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,301 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use Countable;
 | 
			
		||||
use IteratorAggregate;
 | 
			
		||||
use Serializable;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Re-usable, serializable priority queue implementation
 | 
			
		||||
 *
 | 
			
		||||
 * SplPriorityQueue acts as a heap; on iteration, each item is removed from the
 | 
			
		||||
 * queue. If you wish to re-use such a queue, you need to clone it first. This
 | 
			
		||||
 * makes for some interesting issues if you wish to delete items from the queue,
 | 
			
		||||
 * or, as already stated, iterate over it multiple times.
 | 
			
		||||
 *
 | 
			
		||||
 * This class aggregates items for the queue itself, but also composes an
 | 
			
		||||
 * "inner" iterator in the form of an SplPriorityQueue object for performing
 | 
			
		||||
 * the actual iteration.
 | 
			
		||||
 */
 | 
			
		||||
class PriorityQueue implements Countable, IteratorAggregate, Serializable
 | 
			
		||||
{
 | 
			
		||||
    const EXTR_DATA     = 0x00000001;
 | 
			
		||||
    const EXTR_PRIORITY = 0x00000002;
 | 
			
		||||
    const EXTR_BOTH     = 0x00000003;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Inner queue class to use for iteration
 | 
			
		||||
     * @var string
 | 
			
		||||
     */
 | 
			
		||||
    protected $queueClass = 'Zend\Stdlib\SplPriorityQueue';
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Actual items aggregated in the priority queue. Each item is an array
 | 
			
		||||
     * with keys "data" and "priority".
 | 
			
		||||
     * @var array
 | 
			
		||||
     */
 | 
			
		||||
    protected $items      = [];
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Inner queue object
 | 
			
		||||
     * @var SplPriorityQueue
 | 
			
		||||
     */
 | 
			
		||||
    protected $queue;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Insert an item into the queue
 | 
			
		||||
     *
 | 
			
		||||
     * Priority defaults to 1 (low priority) if none provided.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $data
 | 
			
		||||
     * @param  int $priority
 | 
			
		||||
     * @return PriorityQueue
 | 
			
		||||
     */
 | 
			
		||||
    public function insert($data, $priority = 1)
 | 
			
		||||
    {
 | 
			
		||||
        $priority = (int) $priority;
 | 
			
		||||
        $this->items[] = [
 | 
			
		||||
            'data'     => $data,
 | 
			
		||||
            'priority' => $priority,
 | 
			
		||||
        ];
 | 
			
		||||
        $this->getQueue()->insert($data, $priority);
 | 
			
		||||
        return $this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Remove an item from the queue
 | 
			
		||||
     *
 | 
			
		||||
     * This is different than {@link extract()}; its purpose is to dequeue an
 | 
			
		||||
     * item.
 | 
			
		||||
     *
 | 
			
		||||
     * This operation is potentially expensive, as it requires
 | 
			
		||||
     * re-initialization and re-population of the inner queue.
 | 
			
		||||
     *
 | 
			
		||||
     * Note: this removes the first item matching the provided item found. If
 | 
			
		||||
     * the same item has been added multiple times, it will not remove other
 | 
			
		||||
     * instances.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $datum
 | 
			
		||||
     * @return bool False if the item was not found, true otherwise.
 | 
			
		||||
     */
 | 
			
		||||
    public function remove($datum)
 | 
			
		||||
    {
 | 
			
		||||
        $found = false;
 | 
			
		||||
        foreach ($this->items as $key => $item) {
 | 
			
		||||
            if ($item['data'] === $datum) {
 | 
			
		||||
                $found = true;
 | 
			
		||||
                break;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        if ($found) {
 | 
			
		||||
            unset($this->items[$key]);
 | 
			
		||||
            $this->queue = null;
 | 
			
		||||
 | 
			
		||||
            if (!$this->isEmpty()) {
 | 
			
		||||
                $queue = $this->getQueue();
 | 
			
		||||
                foreach ($this->items as $item) {
 | 
			
		||||
                    $queue->insert($item['data'], $item['priority']);
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
            return true;
 | 
			
		||||
        }
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Is the queue empty?
 | 
			
		||||
     *
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public function isEmpty()
 | 
			
		||||
    {
 | 
			
		||||
        return (0 === $this->count());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * How many items are in the queue?
 | 
			
		||||
     *
 | 
			
		||||
     * @return int
 | 
			
		||||
     */
 | 
			
		||||
    public function count()
 | 
			
		||||
    {
 | 
			
		||||
        return count($this->items);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Peek at the top node in the queue, based on priority.
 | 
			
		||||
     *
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function top()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->getIterator()->top();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Extract a node from the inner queue and sift up
 | 
			
		||||
     *
 | 
			
		||||
     * @return mixed
 | 
			
		||||
     */
 | 
			
		||||
    public function extract()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->getQueue()->extract();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Retrieve the inner iterator
 | 
			
		||||
     *
 | 
			
		||||
     * SplPriorityQueue acts as a heap, which typically implies that as items
 | 
			
		||||
     * are iterated, they are also removed. This does not work for situations
 | 
			
		||||
     * where the queue may be iterated multiple times. As such, this class
 | 
			
		||||
     * aggregates the values, and also injects an SplPriorityQueue. This method
 | 
			
		||||
     * retrieves the inner queue object, and clones it for purposes of
 | 
			
		||||
     * iteration.
 | 
			
		||||
     *
 | 
			
		||||
     * @return SplPriorityQueue
 | 
			
		||||
     */
 | 
			
		||||
    public function getIterator()
 | 
			
		||||
    {
 | 
			
		||||
        $queue = $this->getQueue();
 | 
			
		||||
        return clone $queue;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Serialize the data structure
 | 
			
		||||
     *
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function serialize()
 | 
			
		||||
    {
 | 
			
		||||
        return serialize($this->items);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Unserialize a string into a PriorityQueue object
 | 
			
		||||
     *
 | 
			
		||||
     * Serialization format is compatible with {@link Zend\Stdlib\SplPriorityQueue}
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $data
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function unserialize($data)
 | 
			
		||||
    {
 | 
			
		||||
        foreach (unserialize($data) as $item) {
 | 
			
		||||
            $this->insert($item['data'], $item['priority']);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Serialize to an array
 | 
			
		||||
     *
 | 
			
		||||
     * By default, returns only the item data, and in the order registered (not
 | 
			
		||||
     * sorted). You may provide one of the EXTR_* flags as an argument, allowing
 | 
			
		||||
     * the ability to return priorities or both data and priority.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  int $flag
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public function toArray($flag = self::EXTR_DATA)
 | 
			
		||||
    {
 | 
			
		||||
        switch ($flag) {
 | 
			
		||||
            case self::EXTR_BOTH:
 | 
			
		||||
                return $this->items;
 | 
			
		||||
            case self::EXTR_PRIORITY:
 | 
			
		||||
                return array_map(function ($item) {
 | 
			
		||||
                    return $item['priority'];
 | 
			
		||||
                }, $this->items);
 | 
			
		||||
            case self::EXTR_DATA:
 | 
			
		||||
            default:
 | 
			
		||||
                return array_map(function ($item) {
 | 
			
		||||
                    return $item['data'];
 | 
			
		||||
                }, $this->items);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Specify the internal queue class
 | 
			
		||||
     *
 | 
			
		||||
     * Please see {@link getIterator()} for details on the necessity of an
 | 
			
		||||
     * internal queue class. The class provided should extend SplPriorityQueue.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $class
 | 
			
		||||
     * @return PriorityQueue
 | 
			
		||||
     */
 | 
			
		||||
    public function setInternalQueueClass($class)
 | 
			
		||||
    {
 | 
			
		||||
        $this->queueClass = (string) $class;
 | 
			
		||||
        return $this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Does the queue contain the given datum?
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $datum
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public function contains($datum)
 | 
			
		||||
    {
 | 
			
		||||
        foreach ($this->items as $item) {
 | 
			
		||||
            if ($item['data'] === $datum) {
 | 
			
		||||
                return true;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Does the queue have an item with the given priority?
 | 
			
		||||
     *
 | 
			
		||||
     * @param  int $priority
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public function hasPriority($priority)
 | 
			
		||||
    {
 | 
			
		||||
        foreach ($this->items as $item) {
 | 
			
		||||
            if ($item['priority'] === $priority) {
 | 
			
		||||
                return true;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get the inner priority queue instance
 | 
			
		||||
     *
 | 
			
		||||
     * @throws Exception\DomainException
 | 
			
		||||
     * @return SplPriorityQueue
 | 
			
		||||
     */
 | 
			
		||||
    protected function getQueue()
 | 
			
		||||
    {
 | 
			
		||||
        if (null === $this->queue) {
 | 
			
		||||
            $this->queue = new $this->queueClass();
 | 
			
		||||
            if (!$this->queue instanceof \SplPriorityQueue) {
 | 
			
		||||
                throw new Exception\DomainException(sprintf(
 | 
			
		||||
                    'PriorityQueue expects an internal queue of type SplPriorityQueue; received "%s"',
 | 
			
		||||
                    get_class($this->queue)
 | 
			
		||||
                ));
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return $this->queue;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Add support for deep cloning
 | 
			
		||||
     *
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function __clone()
 | 
			
		||||
    {
 | 
			
		||||
        if (null !== $this->queue) {
 | 
			
		||||
            $this->queue = clone $this->queue;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										15
									
								
								vendor/zendframework/zend-stdlib/src/Request.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								vendor/zendframework/zend-stdlib/src/Request.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
class Request extends Message implements RequestInterface
 | 
			
		||||
{
 | 
			
		||||
    // generic request implementation
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										14
									
								
								vendor/zendframework/zend-stdlib/src/RequestInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								vendor/zendframework/zend-stdlib/src/RequestInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
interface RequestInterface extends MessageInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										15
									
								
								vendor/zendframework/zend-stdlib/src/Response.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								vendor/zendframework/zend-stdlib/src/Response.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
class Response extends Message implements ResponseInterface
 | 
			
		||||
{
 | 
			
		||||
    // generic response implementation
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										14
									
								
								vendor/zendframework/zend-stdlib/src/ResponseInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								vendor/zendframework/zend-stdlib/src/ResponseInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
interface ResponseInterface extends MessageInterface
 | 
			
		||||
{
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										91
									
								
								vendor/zendframework/zend-stdlib/src/SplPriorityQueue.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										91
									
								
								vendor/zendframework/zend-stdlib/src/SplPriorityQueue.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,91 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use Serializable;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Serializable version of SplPriorityQueue
 | 
			
		||||
 *
 | 
			
		||||
 * Also, provides predictable heap order for datums added with the same priority
 | 
			
		||||
 * (i.e., they will be emitted in the same order they are enqueued).
 | 
			
		||||
 */
 | 
			
		||||
class SplPriorityQueue extends \SplPriorityQueue implements Serializable
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * @var int Seed used to ensure queue order for items of the same priority
 | 
			
		||||
     */
 | 
			
		||||
    protected $serial = PHP_INT_MAX;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Insert a value with a given priority
 | 
			
		||||
     *
 | 
			
		||||
     * Utilizes {@var $serial} to ensure that values of equal priority are
 | 
			
		||||
     * emitted in the same order in which they are inserted.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  mixed $datum
 | 
			
		||||
     * @param  mixed $priority
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function insert($datum, $priority)
 | 
			
		||||
    {
 | 
			
		||||
        if (!is_array($priority)) {
 | 
			
		||||
            $priority = [$priority, $this->serial--];
 | 
			
		||||
        }
 | 
			
		||||
        parent::insert($datum, $priority);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Serialize to an array
 | 
			
		||||
     *
 | 
			
		||||
     * Array will be priority => data pairs
 | 
			
		||||
     *
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public function toArray()
 | 
			
		||||
    {
 | 
			
		||||
        $array = [];
 | 
			
		||||
        foreach (clone $this as $item) {
 | 
			
		||||
            $array[] = $item;
 | 
			
		||||
        }
 | 
			
		||||
        return $array;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Serialize
 | 
			
		||||
     *
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function serialize()
 | 
			
		||||
    {
 | 
			
		||||
        $clone = clone $this;
 | 
			
		||||
        $clone->setExtractFlags(self::EXTR_BOTH);
 | 
			
		||||
 | 
			
		||||
        $data = [];
 | 
			
		||||
        foreach ($clone as $item) {
 | 
			
		||||
            $data[] = $item;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return serialize($data);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Deserialize
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $data
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function unserialize($data)
 | 
			
		||||
    {
 | 
			
		||||
        foreach (unserialize($data) as $item) {
 | 
			
		||||
            $this->insert($item['data'], $item['priority']);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										55
									
								
								vendor/zendframework/zend-stdlib/src/SplQueue.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								vendor/zendframework/zend-stdlib/src/SplQueue.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,55 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use Serializable;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Serializable version of SplQueue
 | 
			
		||||
 */
 | 
			
		||||
class SplQueue extends \SplQueue implements Serializable
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Return an array representing the queue
 | 
			
		||||
     *
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public function toArray()
 | 
			
		||||
    {
 | 
			
		||||
        $array = [];
 | 
			
		||||
        foreach ($this as $item) {
 | 
			
		||||
            $array[] = $item;
 | 
			
		||||
        }
 | 
			
		||||
        return $array;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Serialize
 | 
			
		||||
     *
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function serialize()
 | 
			
		||||
    {
 | 
			
		||||
        return serialize($this->toArray());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Unserialize
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $data
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function unserialize($data)
 | 
			
		||||
    {
 | 
			
		||||
        foreach (unserialize($data) as $item) {
 | 
			
		||||
            $this->push($item);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										55
									
								
								vendor/zendframework/zend-stdlib/src/SplStack.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								vendor/zendframework/zend-stdlib/src/SplStack.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,55 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use Serializable;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Serializable version of SplStack
 | 
			
		||||
 */
 | 
			
		||||
class SplStack extends \SplStack implements Serializable
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Serialize to an array representing the stack
 | 
			
		||||
     *
 | 
			
		||||
     * @return array
 | 
			
		||||
     */
 | 
			
		||||
    public function toArray()
 | 
			
		||||
    {
 | 
			
		||||
        $array = [];
 | 
			
		||||
        foreach ($this as $item) {
 | 
			
		||||
            $array[] = $item;
 | 
			
		||||
        }
 | 
			
		||||
        return $array;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Serialize
 | 
			
		||||
     *
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function serialize()
 | 
			
		||||
    {
 | 
			
		||||
        return serialize($this->toArray());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Unserialize
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string $data
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public function unserialize($data)
 | 
			
		||||
    {
 | 
			
		||||
        foreach (unserialize($data) as $item) {
 | 
			
		||||
            $this->unshift($item);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										187
									
								
								vendor/zendframework/zend-stdlib/src/StringUtils.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										187
									
								
								vendor/zendframework/zend-stdlib/src/StringUtils.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,187 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib;
 | 
			
		||||
 | 
			
		||||
use Zend\Stdlib\StringWrapper\StringWrapperInterface;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Utility class for handling strings of different character encodings
 | 
			
		||||
 * using available PHP extensions.
 | 
			
		||||
 *
 | 
			
		||||
 * Declared abstract, as we have no need for instantiation.
 | 
			
		||||
 */
 | 
			
		||||
abstract class StringUtils
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Ordered list of registered string wrapper instances
 | 
			
		||||
     *
 | 
			
		||||
     * @var StringWrapperInterface[]
 | 
			
		||||
     */
 | 
			
		||||
    protected static $wrapperRegistry = null;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * A list of known single-byte character encodings (upper-case)
 | 
			
		||||
     *
 | 
			
		||||
     * @var string[]
 | 
			
		||||
     */
 | 
			
		||||
    protected static $singleByteEncodings = [
 | 
			
		||||
        'ASCII', '7BIT', '8BIT',
 | 
			
		||||
        'ISO-8859-1', 'ISO-8859-2', 'ISO-8859-3', 'ISO-8859-4', 'ISO-8859-5',
 | 
			
		||||
        'ISO-8859-6', 'ISO-8859-7', 'ISO-8859-8', 'ISO-8859-9', 'ISO-8859-10',
 | 
			
		||||
        'ISO-8859-11', 'ISO-8859-13', 'ISO-8859-14', 'ISO-8859-15', 'ISO-8859-16',
 | 
			
		||||
        'CP-1251', 'CP-1252',
 | 
			
		||||
        // TODO
 | 
			
		||||
    ];
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Is PCRE compiled with Unicode support?
 | 
			
		||||
     *
 | 
			
		||||
     * @var bool
 | 
			
		||||
     **/
 | 
			
		||||
    protected static $hasPcreUnicodeSupport = null;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get registered wrapper classes
 | 
			
		||||
     *
 | 
			
		||||
     * @return string[]
 | 
			
		||||
     */
 | 
			
		||||
    public static function getRegisteredWrappers()
 | 
			
		||||
    {
 | 
			
		||||
        if (static::$wrapperRegistry === null) {
 | 
			
		||||
            static::$wrapperRegistry = [];
 | 
			
		||||
 | 
			
		||||
            if (extension_loaded('intl')) {
 | 
			
		||||
                static::$wrapperRegistry[] = 'Zend\Stdlib\StringWrapper\Intl';
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if (extension_loaded('mbstring')) {
 | 
			
		||||
                static::$wrapperRegistry[] = 'Zend\Stdlib\StringWrapper\MbString';
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if (extension_loaded('iconv')) {
 | 
			
		||||
                static::$wrapperRegistry[] = 'Zend\Stdlib\StringWrapper\Iconv';
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            static::$wrapperRegistry[] = 'Zend\Stdlib\StringWrapper\Native';
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return static::$wrapperRegistry;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Register a string wrapper class
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $wrapper
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public static function registerWrapper($wrapper)
 | 
			
		||||
    {
 | 
			
		||||
        $wrapper = (string) $wrapper;
 | 
			
		||||
        if (!in_array($wrapper, static::$wrapperRegistry, true)) {
 | 
			
		||||
            static::$wrapperRegistry[] = $wrapper;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Unregister a string wrapper class
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $wrapper
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public static function unregisterWrapper($wrapper)
 | 
			
		||||
    {
 | 
			
		||||
        $index = array_search((string) $wrapper, static::$wrapperRegistry, true);
 | 
			
		||||
        if ($index !== false) {
 | 
			
		||||
            unset(static::$wrapperRegistry[$index]);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Reset all registered wrappers so the default wrappers will be used
 | 
			
		||||
     *
 | 
			
		||||
     * @return void
 | 
			
		||||
     */
 | 
			
		||||
    public static function resetRegisteredWrappers()
 | 
			
		||||
    {
 | 
			
		||||
        static::$wrapperRegistry = null;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get the first string wrapper supporting the given character encoding
 | 
			
		||||
     * and supports to convert into the given convert encoding.
 | 
			
		||||
     *
 | 
			
		||||
     * @param string      $encoding        Character encoding to support
 | 
			
		||||
     * @param string|null $convertEncoding OPTIONAL character encoding to convert in
 | 
			
		||||
     * @return StringWrapperInterface
 | 
			
		||||
     * @throws Exception\RuntimeException If no wrapper supports given character encodings
 | 
			
		||||
     */
 | 
			
		||||
    public static function getWrapper($encoding = 'UTF-8', $convertEncoding = null)
 | 
			
		||||
    {
 | 
			
		||||
        foreach (static::getRegisteredWrappers() as $wrapperClass) {
 | 
			
		||||
            if ($wrapperClass::isSupported($encoding, $convertEncoding)) {
 | 
			
		||||
                $wrapper = new $wrapperClass($encoding, $convertEncoding);
 | 
			
		||||
                $wrapper->setEncoding($encoding, $convertEncoding);
 | 
			
		||||
                return $wrapper;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        throw new Exception\RuntimeException(
 | 
			
		||||
            'No wrapper found supporting "' . $encoding . '"'
 | 
			
		||||
            . (($convertEncoding !== null) ? ' and "' . $convertEncoding . '"' : '')
 | 
			
		||||
        );
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get a list of all known single-byte character encodings
 | 
			
		||||
     *
 | 
			
		||||
     * @return string[]
 | 
			
		||||
     */
 | 
			
		||||
    public static function getSingleByteEncodings()
 | 
			
		||||
    {
 | 
			
		||||
        return static::$singleByteEncodings;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Check if a given encoding is a known single-byte character encoding
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $encoding
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public static function isSingleByteEncoding($encoding)
 | 
			
		||||
    {
 | 
			
		||||
        return in_array(strtoupper($encoding), static::$singleByteEncodings);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Check if a given string is valid UTF-8 encoded
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $str
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public static function isValidUtf8($str)
 | 
			
		||||
    {
 | 
			
		||||
        return is_string($str) && ($str === '' || preg_match('/^./su', $str) == 1);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Is PCRE compiled with Unicode support?
 | 
			
		||||
     *
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public static function hasPcreUnicodeSupport()
 | 
			
		||||
    {
 | 
			
		||||
        if (static::$hasPcreUnicodeSupport === null) {
 | 
			
		||||
            ErrorHandler::start();
 | 
			
		||||
            static::$hasPcreUnicodeSupport = defined('PREG_BAD_UTF8_OFFSET_ERROR') && preg_match('/\pL/u', 'a') == 1;
 | 
			
		||||
            ErrorHandler::stop();
 | 
			
		||||
        }
 | 
			
		||||
        return static::$hasPcreUnicodeSupport;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										269
									
								
								vendor/zendframework/zend-stdlib/src/StringWrapper/AbstractStringWrapper.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										269
									
								
								vendor/zendframework/zend-stdlib/src/StringWrapper/AbstractStringWrapper.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,269 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\StringWrapper;
 | 
			
		||||
 | 
			
		||||
use Zend\Stdlib\Exception;
 | 
			
		||||
use Zend\Stdlib\StringUtils;
 | 
			
		||||
 | 
			
		||||
abstract class AbstractStringWrapper implements StringWrapperInterface
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * The character encoding working on
 | 
			
		||||
     * @var string|null
 | 
			
		||||
     */
 | 
			
		||||
    protected $encoding = 'UTF-8';
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * An optionally character encoding to convert to
 | 
			
		||||
     * @var string|null
 | 
			
		||||
     */
 | 
			
		||||
    protected $convertEncoding;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Check if the given character encoding is supported by this wrapper
 | 
			
		||||
     * and the character encoding to convert to is also supported.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string      $encoding
 | 
			
		||||
     * @param  string|null $convertEncoding
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public static function isSupported($encoding, $convertEncoding = null)
 | 
			
		||||
    {
 | 
			
		||||
        $supportedEncodings = static::getSupportedEncodings();
 | 
			
		||||
 | 
			
		||||
        if (!in_array(strtoupper($encoding), $supportedEncodings)) {
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ($convertEncoding !== null && !in_array(strtoupper($convertEncoding), $supportedEncodings)) {
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return true;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Set character encoding working with and convert to
 | 
			
		||||
     *
 | 
			
		||||
     * @param string      $encoding         The character encoding to work with
 | 
			
		||||
     * @param string|null $convertEncoding  The character encoding to convert to
 | 
			
		||||
     * @return StringWrapperInterface
 | 
			
		||||
     */
 | 
			
		||||
    public function setEncoding($encoding, $convertEncoding = null)
 | 
			
		||||
    {
 | 
			
		||||
        $supportedEncodings = static::getSupportedEncodings();
 | 
			
		||||
 | 
			
		||||
        $encodingUpper = strtoupper($encoding);
 | 
			
		||||
        if (!in_array($encodingUpper, $supportedEncodings)) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException(
 | 
			
		||||
                'Wrapper doesn\'t support character encoding "' . $encoding . '"'
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ($convertEncoding !== null) {
 | 
			
		||||
            $convertEncodingUpper = strtoupper($convertEncoding);
 | 
			
		||||
            if (!in_array($convertEncodingUpper, $supportedEncodings)) {
 | 
			
		||||
                throw new Exception\InvalidArgumentException(
 | 
			
		||||
                    'Wrapper doesn\'t support character encoding "' . $convertEncoding . '"'
 | 
			
		||||
                );
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            $this->convertEncoding = $convertEncodingUpper;
 | 
			
		||||
        } else {
 | 
			
		||||
            $this->convertEncoding = null;
 | 
			
		||||
        }
 | 
			
		||||
        $this->encoding = $encodingUpper;
 | 
			
		||||
 | 
			
		||||
        return $this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get the defined character encoding to work with
 | 
			
		||||
     *
 | 
			
		||||
     * @return string
 | 
			
		||||
     * @throws Exception\LogicException If no encoding was defined
 | 
			
		||||
     */
 | 
			
		||||
    public function getEncoding()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->encoding;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get the defined character encoding to convert to
 | 
			
		||||
     *
 | 
			
		||||
     * @return string|null
 | 
			
		||||
    */
 | 
			
		||||
    public function getConvertEncoding()
 | 
			
		||||
    {
 | 
			
		||||
        return $this->convertEncoding;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Convert a string from defined character encoding to the defined convert encoding
 | 
			
		||||
     *
 | 
			
		||||
     * @param string  $str
 | 
			
		||||
     * @param bool $reverse
 | 
			
		||||
     * @return string|false
 | 
			
		||||
     */
 | 
			
		||||
    public function convert($str, $reverse = false)
 | 
			
		||||
    {
 | 
			
		||||
        $encoding        = $this->getEncoding();
 | 
			
		||||
        $convertEncoding = $this->getConvertEncoding();
 | 
			
		||||
        if ($convertEncoding === null) {
 | 
			
		||||
            throw new Exception\LogicException(
 | 
			
		||||
                'No convert encoding defined'
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ($encoding === $convertEncoding) {
 | 
			
		||||
            return $str;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $from = $reverse ? $convertEncoding : $encoding;
 | 
			
		||||
        $to   = $reverse ? $encoding : $convertEncoding;
 | 
			
		||||
        throw new Exception\RuntimeException(sprintf(
 | 
			
		||||
            'Converting from "%s" to "%s" isn\'t supported by this string wrapper',
 | 
			
		||||
            $from,
 | 
			
		||||
            $to
 | 
			
		||||
        ));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Wraps a string to a given number of characters
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string  $string
 | 
			
		||||
     * @param  int $width
 | 
			
		||||
     * @param  string  $break
 | 
			
		||||
     * @param  bool $cut
 | 
			
		||||
     * @return string|false
 | 
			
		||||
     */
 | 
			
		||||
    public function wordWrap($string, $width = 75, $break = "\n", $cut = false)
 | 
			
		||||
    {
 | 
			
		||||
        $string = (string) $string;
 | 
			
		||||
        if ($string === '') {
 | 
			
		||||
            return '';
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $break = (string) $break;
 | 
			
		||||
        if ($break === '') {
 | 
			
		||||
            throw new Exception\InvalidArgumentException('Break string cannot be empty');
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $width = (int) $width;
 | 
			
		||||
        if ($width === 0 && $cut) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException('Cannot force cut when width is zero');
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (StringUtils::isSingleByteEncoding($this->getEncoding())) {
 | 
			
		||||
            return wordwrap($string, $width, $break, $cut);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $stringWidth = $this->strlen($string);
 | 
			
		||||
        $breakWidth  = $this->strlen($break);
 | 
			
		||||
 | 
			
		||||
        $result    = '';
 | 
			
		||||
        $lastStart = $lastSpace = 0;
 | 
			
		||||
 | 
			
		||||
        for ($current = 0; $current < $stringWidth; $current++) {
 | 
			
		||||
            $char = $this->substr($string, $current, 1);
 | 
			
		||||
 | 
			
		||||
            $possibleBreak = $char;
 | 
			
		||||
            if ($breakWidth !== 1) {
 | 
			
		||||
                $possibleBreak = $this->substr($string, $current, $breakWidth);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if ($possibleBreak === $break) {
 | 
			
		||||
                $result    .= $this->substr($string, $lastStart, $current - $lastStart + $breakWidth);
 | 
			
		||||
                $current   += $breakWidth - 1;
 | 
			
		||||
                $lastStart  = $lastSpace = $current + 1;
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if ($char === ' ') {
 | 
			
		||||
                if ($current - $lastStart >= $width) {
 | 
			
		||||
                    $result    .= $this->substr($string, $lastStart, $current - $lastStart) . $break;
 | 
			
		||||
                    $lastStart  = $current + 1;
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                $lastSpace = $current;
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if ($current - $lastStart >= $width && $cut && $lastStart >= $lastSpace) {
 | 
			
		||||
                $result    .= $this->substr($string, $lastStart, $current - $lastStart) . $break;
 | 
			
		||||
                $lastStart  = $lastSpace = $current;
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if ($current - $lastStart >= $width && $lastStart < $lastSpace) {
 | 
			
		||||
                $result    .= $this->substr($string, $lastStart, $lastSpace - $lastStart) . $break;
 | 
			
		||||
                $lastStart  = $lastSpace = $lastSpace + 1;
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ($lastStart !== $current) {
 | 
			
		||||
            $result .= $this->substr($string, $lastStart, $current - $lastStart);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $result;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Pad a string to a certain length with another string
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string  $input
 | 
			
		||||
     * @param  int $padLength
 | 
			
		||||
     * @param  string  $padString
 | 
			
		||||
     * @param  int $padType
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function strPad($input, $padLength, $padString = ' ', $padType = STR_PAD_RIGHT)
 | 
			
		||||
    {
 | 
			
		||||
        if (StringUtils::isSingleByteEncoding($this->getEncoding())) {
 | 
			
		||||
            return str_pad($input, $padLength, $padString, $padType);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $lengthOfPadding = $padLength - $this->strlen($input);
 | 
			
		||||
        if ($lengthOfPadding <= 0) {
 | 
			
		||||
            return $input;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $padStringLength = $this->strlen($padString);
 | 
			
		||||
        if ($padStringLength === 0) {
 | 
			
		||||
            return $input;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $repeatCount = floor($lengthOfPadding / $padStringLength);
 | 
			
		||||
 | 
			
		||||
        if ($padType === STR_PAD_BOTH) {
 | 
			
		||||
            $repeatCountLeft = $repeatCountRight = ($repeatCount - $repeatCount % 2) / 2;
 | 
			
		||||
 | 
			
		||||
            $lastStringLength       = $lengthOfPadding - 2 * $repeatCountLeft * $padStringLength;
 | 
			
		||||
            $lastStringLeftLength   = $lastStringRightLength = floor($lastStringLength / 2);
 | 
			
		||||
            $lastStringRightLength += $lastStringLength % 2;
 | 
			
		||||
 | 
			
		||||
            $lastStringLeft  = $this->substr($padString, 0, $lastStringLeftLength);
 | 
			
		||||
            $lastStringRight = $this->substr($padString, 0, $lastStringRightLength);
 | 
			
		||||
 | 
			
		||||
            return str_repeat($padString, $repeatCountLeft) . $lastStringLeft
 | 
			
		||||
                . $input
 | 
			
		||||
                . str_repeat($padString, $repeatCountRight) . $lastStringRight;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $lastString = $this->substr($padString, 0, $lengthOfPadding % $padStringLength);
 | 
			
		||||
 | 
			
		||||
        if ($padType === STR_PAD_LEFT) {
 | 
			
		||||
            return str_repeat($padString, $repeatCount) . $lastString . $input;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $input . str_repeat($padString, $repeatCount) . $lastString;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										289
									
								
								vendor/zendframework/zend-stdlib/src/StringWrapper/Iconv.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										289
									
								
								vendor/zendframework/zend-stdlib/src/StringWrapper/Iconv.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,289 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\StringWrapper;
 | 
			
		||||
 | 
			
		||||
use Zend\Stdlib\Exception;
 | 
			
		||||
 | 
			
		||||
class Iconv extends AbstractStringWrapper
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * List of supported character sets (upper case)
 | 
			
		||||
     *
 | 
			
		||||
     * @var string[]
 | 
			
		||||
     * @link http://www.gnu.org/software/libiconv/
 | 
			
		||||
     */
 | 
			
		||||
    protected static $encodings = [
 | 
			
		||||
        // European languages
 | 
			
		||||
        'ASCII',
 | 
			
		||||
        'ISO-8859-1',
 | 
			
		||||
        'ISO-8859-2',
 | 
			
		||||
        'ISO-8859-3',
 | 
			
		||||
        'ISO-8859-4',
 | 
			
		||||
        'ISO-8859-5',
 | 
			
		||||
        'ISO-8859-7',
 | 
			
		||||
        'ISO-8859-9',
 | 
			
		||||
        'ISO-8859-10',
 | 
			
		||||
        'ISO-8859-13',
 | 
			
		||||
        'ISO-8859-14',
 | 
			
		||||
        'ISO-8859-15',
 | 
			
		||||
        'ISO-8859-16',
 | 
			
		||||
        'KOI8-R',
 | 
			
		||||
        'KOI8-U',
 | 
			
		||||
        'KOI8-RU',
 | 
			
		||||
        'CP1250',
 | 
			
		||||
        'CP1251',
 | 
			
		||||
        'CP1252',
 | 
			
		||||
        'CP1253',
 | 
			
		||||
        'CP1254',
 | 
			
		||||
        'CP1257',
 | 
			
		||||
        'CP850',
 | 
			
		||||
        'CP866',
 | 
			
		||||
        'CP1131',
 | 
			
		||||
        'MACROMAN',
 | 
			
		||||
        'MACCENTRALEUROPE',
 | 
			
		||||
        'MACICELAND',
 | 
			
		||||
        'MACCROATIAN',
 | 
			
		||||
        'MACROMANIA',
 | 
			
		||||
        'MACCYRILLIC',
 | 
			
		||||
        'MACUKRAINE',
 | 
			
		||||
        'MACGREEK',
 | 
			
		||||
        'MACTURKISH',
 | 
			
		||||
        'MACINTOSH',
 | 
			
		||||
 | 
			
		||||
        // Semitic languages
 | 
			
		||||
        'ISO-8859-6',
 | 
			
		||||
        'ISO-8859-8',
 | 
			
		||||
        'CP1255',
 | 
			
		||||
        'CP1256',
 | 
			
		||||
        'CP862',
 | 
			
		||||
        'MACHEBREW',
 | 
			
		||||
        'MACARABIC',
 | 
			
		||||
 | 
			
		||||
        // Japanese
 | 
			
		||||
        'EUC-JP',
 | 
			
		||||
        'SHIFT_JIS',
 | 
			
		||||
        'CP932',
 | 
			
		||||
        'ISO-2022-JP',
 | 
			
		||||
        'ISO-2022-JP-2',
 | 
			
		||||
        'ISO-2022-JP-1',
 | 
			
		||||
 | 
			
		||||
        // Chinese
 | 
			
		||||
        'EUC-CN',
 | 
			
		||||
        'HZ',
 | 
			
		||||
        'GBK',
 | 
			
		||||
        'CP936',
 | 
			
		||||
        'GB18030',
 | 
			
		||||
        'EUC-TW',
 | 
			
		||||
        'BIG5',
 | 
			
		||||
        'CP950',
 | 
			
		||||
        'BIG5-HKSCS',
 | 
			
		||||
        'BIG5-HKSCS:2004',
 | 
			
		||||
        'BIG5-HKSCS:2001',
 | 
			
		||||
        'BIG5-HKSCS:1999',
 | 
			
		||||
        'ISO-2022-CN',
 | 
			
		||||
        'ISO-2022-CN-EXT',
 | 
			
		||||
 | 
			
		||||
        // Korean
 | 
			
		||||
        'EUC-KR',
 | 
			
		||||
        'CP949',
 | 
			
		||||
        'ISO-2022-KR',
 | 
			
		||||
        'JOHAB',
 | 
			
		||||
 | 
			
		||||
        // Armenian
 | 
			
		||||
        'ARMSCII-8',
 | 
			
		||||
 | 
			
		||||
        // Georgian
 | 
			
		||||
        'GEORGIAN-ACADEMY',
 | 
			
		||||
        'GEORGIAN-PS',
 | 
			
		||||
 | 
			
		||||
        // Tajik
 | 
			
		||||
        'KOI8-T',
 | 
			
		||||
 | 
			
		||||
        // Kazakh
 | 
			
		||||
        'PT154',
 | 
			
		||||
        'RK1048',
 | 
			
		||||
 | 
			
		||||
        // Thai
 | 
			
		||||
        'ISO-8859-11',
 | 
			
		||||
        'TIS-620',
 | 
			
		||||
        'CP874',
 | 
			
		||||
        'MACTHAI',
 | 
			
		||||
 | 
			
		||||
        // Laotian
 | 
			
		||||
        'MULELAO-1',
 | 
			
		||||
        'CP1133',
 | 
			
		||||
 | 
			
		||||
        // Vietnamese
 | 
			
		||||
        'VISCII',
 | 
			
		||||
        'TCVN',
 | 
			
		||||
        'CP1258',
 | 
			
		||||
 | 
			
		||||
        // Platform specifics
 | 
			
		||||
        'HP-ROMAN8',
 | 
			
		||||
        'NEXTSTEP',
 | 
			
		||||
 | 
			
		||||
        // Full Unicode
 | 
			
		||||
        'UTF-8',
 | 
			
		||||
        'UCS-2',
 | 
			
		||||
        'UCS-2BE',
 | 
			
		||||
        'UCS-2LE',
 | 
			
		||||
        'UCS-4',
 | 
			
		||||
        'UCS-4BE',
 | 
			
		||||
        'UCS-4LE',
 | 
			
		||||
        'UTF-16',
 | 
			
		||||
        'UTF-16BE',
 | 
			
		||||
        'UTF-16LE',
 | 
			
		||||
        'UTF-32',
 | 
			
		||||
        'UTF-32BE',
 | 
			
		||||
        'UTF-32LE',
 | 
			
		||||
        'UTF-7',
 | 
			
		||||
        'C99',
 | 
			
		||||
        'JAVA',
 | 
			
		||||
 | 
			
		||||
        /* Commented out because that's internal encodings not existing in real world
 | 
			
		||||
        // Full Unicode, in terms of uint16_t or uint32_t (with machine dependent endianness and alignment)
 | 
			
		||||
        'UCS-2-INTERNAL',
 | 
			
		||||
        'UCS-4-INTERNAL',
 | 
			
		||||
 | 
			
		||||
        // Locale dependent, in terms of `char' or `wchar_t' (with machine dependent endianness and alignment,
 | 
			
		||||
        // and with OS and locale dependent semantics)
 | 
			
		||||
        'char',
 | 
			
		||||
        'wchar_t',
 | 
			
		||||
        '', // The empty encoding name is equivalent to "char": it denotes the locale dependent character encoding.
 | 
			
		||||
        */
 | 
			
		||||
 | 
			
		||||
        // When configured with the option --enable-extra-encodings,
 | 
			
		||||
        // it also provides support for a few extra encodings:
 | 
			
		||||
 | 
			
		||||
        // European languages
 | 
			
		||||
        'CP437',
 | 
			
		||||
        'CP737',
 | 
			
		||||
        'CP775',
 | 
			
		||||
        'CP852',
 | 
			
		||||
        'CP853',
 | 
			
		||||
        'CP855',
 | 
			
		||||
        'CP857',
 | 
			
		||||
        'CP858',
 | 
			
		||||
        'CP860',
 | 
			
		||||
        'CP861',
 | 
			
		||||
        'CP863',
 | 
			
		||||
        'CP865',
 | 
			
		||||
        'CP869',
 | 
			
		||||
        'CP1125',
 | 
			
		||||
 | 
			
		||||
        // Semitic languages
 | 
			
		||||
        'CP864',
 | 
			
		||||
 | 
			
		||||
        // Japanese
 | 
			
		||||
        'EUC-JISX0213',
 | 
			
		||||
        'Shift_JISX0213',
 | 
			
		||||
        'ISO-2022-JP-3',
 | 
			
		||||
 | 
			
		||||
        // Chinese
 | 
			
		||||
        'BIG5-2003', // (experimental)
 | 
			
		||||
 | 
			
		||||
        // Turkmen
 | 
			
		||||
        'TDS565',
 | 
			
		||||
 | 
			
		||||
        // Platform specifics
 | 
			
		||||
        'ATARIST',
 | 
			
		||||
        'RISCOS-LATIN1',
 | 
			
		||||
    ];
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get a list of supported character encodings
 | 
			
		||||
     *
 | 
			
		||||
     * @return string[]
 | 
			
		||||
     */
 | 
			
		||||
    public static function getSupportedEncodings()
 | 
			
		||||
    {
 | 
			
		||||
        return static::$encodings;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Constructor
 | 
			
		||||
     *
 | 
			
		||||
     * @throws Exception\ExtensionNotLoadedException
 | 
			
		||||
     */
 | 
			
		||||
    public function __construct()
 | 
			
		||||
    {
 | 
			
		||||
        if (!extension_loaded('iconv')) {
 | 
			
		||||
            throw new Exception\ExtensionNotLoadedException(
 | 
			
		||||
                'PHP extension "iconv" is required for this wrapper'
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the length of the given string
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $str
 | 
			
		||||
     * @return int|false
 | 
			
		||||
     */
 | 
			
		||||
    public function strlen($str)
 | 
			
		||||
    {
 | 
			
		||||
        return iconv_strlen($str, $this->getEncoding());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the portion of string specified by the start and length parameters
 | 
			
		||||
     *
 | 
			
		||||
     * @param string   $str
 | 
			
		||||
     * @param int      $offset
 | 
			
		||||
     * @param int|null $length
 | 
			
		||||
     * @return string|false
 | 
			
		||||
     */
 | 
			
		||||
    public function substr($str, $offset = 0, $length = null)
 | 
			
		||||
    {
 | 
			
		||||
        return iconv_substr($str, $offset, $length, $this->getEncoding());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Find the position of the first occurrence of a substring in a string
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $haystack
 | 
			
		||||
     * @param string $needle
 | 
			
		||||
     * @param int    $offset
 | 
			
		||||
     * @return int|false
 | 
			
		||||
     */
 | 
			
		||||
    public function strpos($haystack, $needle, $offset = 0)
 | 
			
		||||
    {
 | 
			
		||||
        return iconv_strpos($haystack, $needle, $offset, $this->getEncoding());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Convert a string from defined encoding to the defined convert encoding
 | 
			
		||||
     *
 | 
			
		||||
     * @param string  $str
 | 
			
		||||
     * @param bool $reverse
 | 
			
		||||
     * @return string|false
 | 
			
		||||
     */
 | 
			
		||||
    public function convert($str, $reverse = false)
 | 
			
		||||
    {
 | 
			
		||||
        $encoding        = $this->getEncoding();
 | 
			
		||||
        $convertEncoding = $this->getConvertEncoding();
 | 
			
		||||
        if ($convertEncoding === null) {
 | 
			
		||||
            throw new Exception\LogicException(
 | 
			
		||||
                'No convert encoding defined'
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ($encoding === $convertEncoding) {
 | 
			
		||||
            return $str;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $fromEncoding = $reverse ? $convertEncoding : $encoding;
 | 
			
		||||
        $toEncoding   = $reverse ? $encoding : $convertEncoding;
 | 
			
		||||
 | 
			
		||||
        // automatically add "//IGNORE" to not stop converting on invalid characters
 | 
			
		||||
        // invalid characters triggers a notice anyway
 | 
			
		||||
        return iconv($fromEncoding, $toEncoding . '//IGNORE', $str);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										88
									
								
								vendor/zendframework/zend-stdlib/src/StringWrapper/Intl.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								vendor/zendframework/zend-stdlib/src/StringWrapper/Intl.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,88 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\StringWrapper;
 | 
			
		||||
 | 
			
		||||
use Zend\Stdlib\Exception;
 | 
			
		||||
 | 
			
		||||
class Intl extends AbstractStringWrapper
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * List of supported character sets (upper case)
 | 
			
		||||
     *
 | 
			
		||||
     * @var string[]
 | 
			
		||||
     */
 | 
			
		||||
    protected static $encodings = ['UTF-8'];
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get a list of supported character encodings
 | 
			
		||||
     *
 | 
			
		||||
     * @return string[]
 | 
			
		||||
     */
 | 
			
		||||
    public static function getSupportedEncodings()
 | 
			
		||||
    {
 | 
			
		||||
        return static::$encodings;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Constructor
 | 
			
		||||
     *
 | 
			
		||||
     * @throws Exception\ExtensionNotLoadedException
 | 
			
		||||
     */
 | 
			
		||||
    public function __construct()
 | 
			
		||||
    {
 | 
			
		||||
        if (!extension_loaded('intl')) {
 | 
			
		||||
            throw new Exception\ExtensionNotLoadedException(
 | 
			
		||||
                'PHP extension "intl" is required for this wrapper'
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the length of the given string
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $str
 | 
			
		||||
     * @return int|false
 | 
			
		||||
     */
 | 
			
		||||
    public function strlen($str)
 | 
			
		||||
    {
 | 
			
		||||
        return grapheme_strlen($str);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the portion of string specified by the start and length parameters
 | 
			
		||||
     *
 | 
			
		||||
     * @param string   $str
 | 
			
		||||
     * @param int      $offset
 | 
			
		||||
     * @param int|null $length
 | 
			
		||||
     * @return string|false
 | 
			
		||||
     */
 | 
			
		||||
    public function substr($str, $offset = 0, $length = null)
 | 
			
		||||
    {
 | 
			
		||||
        // Due fix of PHP #62759 The third argument returns an empty string if is 0 or null.
 | 
			
		||||
        if ($length !== null) {
 | 
			
		||||
            return grapheme_substr($str, $offset, $length);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return grapheme_substr($str, $offset);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Find the position of the first occurrence of a substring in a string
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $haystack
 | 
			
		||||
     * @param string $needle
 | 
			
		||||
     * @param int    $offset
 | 
			
		||||
     * @return int|false
 | 
			
		||||
     */
 | 
			
		||||
    public function strpos($haystack, $needle, $offset = 0)
 | 
			
		||||
    {
 | 
			
		||||
        return grapheme_strpos($haystack, $needle, $offset);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										121
									
								
								vendor/zendframework/zend-stdlib/src/StringWrapper/MbString.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										121
									
								
								vendor/zendframework/zend-stdlib/src/StringWrapper/MbString.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,121 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\StringWrapper;
 | 
			
		||||
 | 
			
		||||
use Zend\Stdlib\Exception;
 | 
			
		||||
 | 
			
		||||
class MbString extends AbstractStringWrapper
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * List of supported character sets (upper case)
 | 
			
		||||
     *
 | 
			
		||||
     * @var null|string[]
 | 
			
		||||
     * @link http://php.net/manual/mbstring.supported-encodings.php
 | 
			
		||||
     */
 | 
			
		||||
    protected static $encodings = null;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get a list of supported character encodings
 | 
			
		||||
     *
 | 
			
		||||
     * @return string[]
 | 
			
		||||
     */
 | 
			
		||||
    public static function getSupportedEncodings()
 | 
			
		||||
    {
 | 
			
		||||
        if (static::$encodings === null) {
 | 
			
		||||
            static::$encodings = array_map('strtoupper', mb_list_encodings());
 | 
			
		||||
 | 
			
		||||
            // FIXME: Converting € (UTF-8) to ISO-8859-16 gives a wrong result
 | 
			
		||||
            $indexIso885916 = array_search('ISO-8859-16', static::$encodings, true);
 | 
			
		||||
            if ($indexIso885916 !== false) {
 | 
			
		||||
                unset(static::$encodings[$indexIso885916]);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return static::$encodings;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Constructor
 | 
			
		||||
     *
 | 
			
		||||
     * @throws Exception\ExtensionNotLoadedException
 | 
			
		||||
     */
 | 
			
		||||
    public function __construct()
 | 
			
		||||
    {
 | 
			
		||||
        if (!extension_loaded('mbstring')) {
 | 
			
		||||
            throw new Exception\ExtensionNotLoadedException(
 | 
			
		||||
                'PHP extension "mbstring" is required for this wrapper'
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the length of the given string
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $str
 | 
			
		||||
     * @return int|false
 | 
			
		||||
     */
 | 
			
		||||
    public function strlen($str)
 | 
			
		||||
    {
 | 
			
		||||
        return mb_strlen($str, $this->getEncoding());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the portion of string specified by the start and length parameters
 | 
			
		||||
     *
 | 
			
		||||
     * @param string   $str
 | 
			
		||||
     * @param int      $offset
 | 
			
		||||
     * @param int|null $length
 | 
			
		||||
     * @return string|false
 | 
			
		||||
     */
 | 
			
		||||
    public function substr($str, $offset = 0, $length = null)
 | 
			
		||||
    {
 | 
			
		||||
        return mb_substr($str, $offset, $length, $this->getEncoding());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Find the position of the first occurrence of a substring in a string
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $haystack
 | 
			
		||||
     * @param string $needle
 | 
			
		||||
     * @param int    $offset
 | 
			
		||||
     * @return int|false
 | 
			
		||||
     */
 | 
			
		||||
    public function strpos($haystack, $needle, $offset = 0)
 | 
			
		||||
    {
 | 
			
		||||
        return mb_strpos($haystack, $needle, $offset, $this->getEncoding());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Convert a string from defined encoding to the defined convert encoding
 | 
			
		||||
     *
 | 
			
		||||
     * @param string  $str
 | 
			
		||||
     * @param bool $reverse
 | 
			
		||||
     * @return string|false
 | 
			
		||||
     */
 | 
			
		||||
    public function convert($str, $reverse = false)
 | 
			
		||||
    {
 | 
			
		||||
        $encoding        = $this->getEncoding();
 | 
			
		||||
        $convertEncoding = $this->getConvertEncoding();
 | 
			
		||||
 | 
			
		||||
        if ($convertEncoding === null) {
 | 
			
		||||
            throw new Exception\LogicException(
 | 
			
		||||
                'No convert encoding defined'
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ($encoding === $convertEncoding) {
 | 
			
		||||
            return $str;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $fromEncoding = $reverse ? $convertEncoding : $encoding;
 | 
			
		||||
        $toEncoding   = $reverse ? $encoding : $convertEncoding;
 | 
			
		||||
        return mb_convert_encoding($str, $toEncoding, $fromEncoding);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										134
									
								
								vendor/zendframework/zend-stdlib/src/StringWrapper/Native.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										134
									
								
								vendor/zendframework/zend-stdlib/src/StringWrapper/Native.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,134 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\StringWrapper;
 | 
			
		||||
 | 
			
		||||
use Zend\Stdlib\Exception;
 | 
			
		||||
use Zend\Stdlib\StringUtils;
 | 
			
		||||
 | 
			
		||||
class Native extends AbstractStringWrapper
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * The character encoding working on
 | 
			
		||||
     * (overwritten to change defaut encoding)
 | 
			
		||||
     *
 | 
			
		||||
     * @var string
 | 
			
		||||
     */
 | 
			
		||||
    protected $encoding = 'ASCII';
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Check if the given character encoding is supported by this wrapper
 | 
			
		||||
     * and the character encoding to convert to is also supported.
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string      $encoding
 | 
			
		||||
     * @param  string|null $convertEncoding
 | 
			
		||||
     * @return bool
 | 
			
		||||
     */
 | 
			
		||||
    public static function isSupported($encoding, $convertEncoding = null)
 | 
			
		||||
    {
 | 
			
		||||
        $encodingUpper      = strtoupper($encoding);
 | 
			
		||||
        $supportedEncodings = static::getSupportedEncodings();
 | 
			
		||||
 | 
			
		||||
        if (!in_array($encodingUpper, $supportedEncodings)) {
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // This adapter doesn't support to convert between encodings
 | 
			
		||||
        if ($convertEncoding !== null && $encodingUpper !== strtoupper($convertEncoding)) {
 | 
			
		||||
            return false;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return true;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get a list of supported character encodings
 | 
			
		||||
     *
 | 
			
		||||
     * @return string[]
 | 
			
		||||
     */
 | 
			
		||||
    public static function getSupportedEncodings()
 | 
			
		||||
    {
 | 
			
		||||
        return StringUtils::getSingleByteEncodings();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Set character encoding working with and convert to
 | 
			
		||||
     *
 | 
			
		||||
     * @param string      $encoding         The character encoding to work with
 | 
			
		||||
     * @param string|null $convertEncoding  The character encoding to convert to
 | 
			
		||||
     * @return StringWrapperInterface
 | 
			
		||||
     */
 | 
			
		||||
    public function setEncoding($encoding, $convertEncoding = null)
 | 
			
		||||
    {
 | 
			
		||||
        $supportedEncodings = static::getSupportedEncodings();
 | 
			
		||||
 | 
			
		||||
        $encodingUpper = strtoupper($encoding);
 | 
			
		||||
        if (!in_array($encodingUpper, $supportedEncodings)) {
 | 
			
		||||
            throw new Exception\InvalidArgumentException(
 | 
			
		||||
                'Wrapper doesn\'t support character encoding "' . $encoding . '"'
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ($encodingUpper !== strtoupper($convertEncoding)) {
 | 
			
		||||
            $this->convertEncoding = $encodingUpper;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ($convertEncoding !== null) {
 | 
			
		||||
            if ($encodingUpper !== strtoupper($convertEncoding)) {
 | 
			
		||||
                throw new Exception\InvalidArgumentException(
 | 
			
		||||
                    'Wrapper doesn\'t support to convert between character encodings'
 | 
			
		||||
                );
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            $this->convertEncoding = $encodingUpper;
 | 
			
		||||
        } else {
 | 
			
		||||
            $this->convertEncoding = null;
 | 
			
		||||
        }
 | 
			
		||||
        $this->encoding = $encodingUpper;
 | 
			
		||||
 | 
			
		||||
        return $this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the length of the given string
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $str
 | 
			
		||||
     * @return int|false
 | 
			
		||||
     */
 | 
			
		||||
    public function strlen($str)
 | 
			
		||||
    {
 | 
			
		||||
        return strlen($str);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the portion of string specified by the start and length parameters
 | 
			
		||||
     *
 | 
			
		||||
     * @param string   $str
 | 
			
		||||
     * @param int      $offset
 | 
			
		||||
     * @param int|null $length
 | 
			
		||||
     * @return string|false
 | 
			
		||||
     */
 | 
			
		||||
    public function substr($str, $offset = 0, $length = null)
 | 
			
		||||
    {
 | 
			
		||||
        return substr($str, $offset, $length);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Find the position of the first occurrence of a substring in a string
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $haystack
 | 
			
		||||
     * @param string $needle
 | 
			
		||||
     * @param int    $offset
 | 
			
		||||
     * @return int|false
 | 
			
		||||
     */
 | 
			
		||||
    public function strpos($haystack, $needle, $offset = 0)
 | 
			
		||||
    {
 | 
			
		||||
        return strpos($haystack, $needle, $offset);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										111
									
								
								vendor/zendframework/zend-stdlib/src/StringWrapper/StringWrapperInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										111
									
								
								vendor/zendframework/zend-stdlib/src/StringWrapper/StringWrapperInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,111 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
namespace Zend\Stdlib\StringWrapper;
 | 
			
		||||
 | 
			
		||||
interface StringWrapperInterface
 | 
			
		||||
{
 | 
			
		||||
    /**
 | 
			
		||||
     * Check if the given character encoding is supported by this wrapper
 | 
			
		||||
     * and the character encoding to convert to is also supported.
 | 
			
		||||
     *
 | 
			
		||||
     * @param string      $encoding
 | 
			
		||||
     * @param string|null $convertEncoding
 | 
			
		||||
     */
 | 
			
		||||
    public static function isSupported($encoding, $convertEncoding = null);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get a list of supported character encodings
 | 
			
		||||
     *
 | 
			
		||||
     * @return string[]
 | 
			
		||||
     */
 | 
			
		||||
    public static function getSupportedEncodings();
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Set character encoding working with and convert to
 | 
			
		||||
     *
 | 
			
		||||
     * @param string      $encoding         The character encoding to work with
 | 
			
		||||
     * @param string|null $convertEncoding  The character encoding to convert to
 | 
			
		||||
     * @return StringWrapperInterface
 | 
			
		||||
     */
 | 
			
		||||
    public function setEncoding($encoding, $convertEncoding = null);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get the defined character encoding to work with (upper case)
 | 
			
		||||
     *
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function getEncoding();
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get the defined character encoding to convert to (upper case)
 | 
			
		||||
     *
 | 
			
		||||
     * @return string|null
 | 
			
		||||
     */
 | 
			
		||||
    public function getConvertEncoding();
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the length of the given string
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $str
 | 
			
		||||
     * @return int|false
 | 
			
		||||
     */
 | 
			
		||||
    public function strlen($str);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Returns the portion of string specified by the start and length parameters
 | 
			
		||||
     *
 | 
			
		||||
     * @param string   $str
 | 
			
		||||
     * @param int      $offset
 | 
			
		||||
     * @param int|null $length
 | 
			
		||||
     * @return string|false
 | 
			
		||||
     */
 | 
			
		||||
    public function substr($str, $offset = 0, $length = null);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Find the position of the first occurrence of a substring in a string
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $haystack
 | 
			
		||||
     * @param string $needle
 | 
			
		||||
     * @param int    $offset
 | 
			
		||||
     * @return int|false
 | 
			
		||||
     */
 | 
			
		||||
    public function strpos($haystack, $needle, $offset = 0);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Convert a string from defined encoding to the defined convert encoding
 | 
			
		||||
     *
 | 
			
		||||
     * @param string  $str
 | 
			
		||||
     * @param bool $reverse
 | 
			
		||||
     * @return string|false
 | 
			
		||||
     */
 | 
			
		||||
    public function convert($str, $reverse = false);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Wraps a string to a given number of characters
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string  $str
 | 
			
		||||
     * @param  int $width
 | 
			
		||||
     * @param  string  $break
 | 
			
		||||
     * @param  bool $cut
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function wordWrap($str, $width = 75, $break = "\n", $cut = false);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Pad a string to a certain length with another string
 | 
			
		||||
     *
 | 
			
		||||
     * @param  string  $input
 | 
			
		||||
     * @param  int $padLength
 | 
			
		||||
     * @param  string  $padString
 | 
			
		||||
     * @param  int $padType
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function strPad($input, $padLength, $padString = ' ', $padType = STR_PAD_RIGHT);
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										14
									
								
								vendor/zendframework/zend-stdlib/src/compatibility/autoload.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								vendor/zendframework/zend-stdlib/src/compatibility/autoload.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
			
		||||
<?php
 | 
			
		||||
/**
 | 
			
		||||
 * Zend Framework (http://framework.zend.com/)
 | 
			
		||||
 *
 | 
			
		||||
 * @link      http://github.com/zendframework/zf2 for the canonical source repository
 | 
			
		||||
 * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
 | 
			
		||||
 * @license   http://framework.zend.com/license/new-bsd New BSD License
 | 
			
		||||
 * @deprecated
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Legacy purposes only, to prevent code that references it from breaking.
 | 
			
		||||
 */
 | 
			
		||||
trigger_error('Polyfill autoload support (file library/Zend/Stdlib/compatibility/autoload.php) is no longer necessary; please remove your require statement referencing this file', E_USER_DEPRECATED);
 | 
			
		||||
		Reference in New Issue
	
	Block a user