|
Server : Apache/2.4.41 (Ubuntu) System : Linux vmi1525618.contaboserver.net 5.4.0-105-generic #119-Ubuntu SMP Mon Mar 7 18:49:24 UTC 2022 x86_64 User : www-data ( 33) PHP Version : 8.2.12 Disable Function : NONE Directory : /var/www/erp.theinteractive.co.in/vendor/php-ds/php-ds/src/ |
Upload File : |
<?php
namespace Ds;
/**
* Collection is the base interface which covers functionality common to all the
* data structures in this library. It guarantees that all structures are
* traversable, countable, and can be converted to json using json_encode().
*
* @package Ds
*
* @template-covariant TKey
* @template-covariant TValue
* @extends Traversable<TKey, TValue>
*/
interface Collection extends \IteratorAggregate, \Countable, \JsonSerializable
{
/**
* Removes all values from the collection.
*/
public function clear();
/**
* Returns the size of the collection.
*
* @return int
*/
public function count(): int;
/**
* Returns a shallow copy of the collection.
*
* @return static a copy of the collection.
*
* @psalm-return static<TKey, TValue>
*/
public function copy();
/**
* Returns whether the collection is empty.
*
* This should be equivalent to a count of zero, but is not required.
* Implementations should define what empty means in their own context.
*/
public function isEmpty(): bool;
/**
* Returns an array representation of the collection.
*
* The format of the returned array is implementation-dependent.
* Some implementations may throw an exception if an array representation
* could not be created.
*
* @return array<TKey, TValue>
*/
public function toArray(): array;
}