OXIESEC PANEL
- Current Dir:
/
/
var
/
www
/
firebase
/
vendor
/
ramsey
/
collection
/
src
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
08/12/2024 10:33:33 AM
rwxr-xr-x
📄
AbstractArray.php
4.44 KB
08/12/2024 10:33:32 AM
rw-r--r--
📄
AbstractCollection.php
12.2 KB
08/12/2024 10:33:32 AM
rw-r--r--
📄
AbstractSet.php
1.07 KB
08/12/2024 10:33:32 AM
rw-r--r--
📄
ArrayInterface.php
1.08 KB
08/12/2024 10:33:32 AM
rw-r--r--
📄
Collection.php
2.37 KB
08/12/2024 10:33:33 AM
rw-r--r--
📄
CollectionInterface.php
9.19 KB
08/12/2024 10:33:33 AM
rw-r--r--
📄
DoubleEndedQueue.php
4.35 KB
08/12/2024 10:33:33 AM
rw-r--r--
📄
DoubleEndedQueueInterface.php
10.42 KB
08/12/2024 10:33:33 AM
rw-r--r--
📁
Exception
-
08/12/2024 10:34:28 AM
rwxr-xr-x
📄
GenericArray.php
536 bytes
08/12/2024 10:33:33 AM
rw-r--r--
📁
Map
-
08/12/2024 10:34:28 AM
rwxr-xr-x
📄
Queue.php
3.72 KB
08/12/2024 10:33:33 AM
rw-r--r--
📄
QueueInterface.php
7.41 KB
08/12/2024 10:33:33 AM
rw-r--r--
📄
Set.php
1.59 KB
08/12/2024 10:33:33 AM
rw-r--r--
📄
Sort.php
652 bytes
08/12/2024 10:33:33 AM
rw-r--r--
📁
Tool
-
08/12/2024 10:34:28 AM
rwxr-xr-x
Editing: Collection.php
Close
<?php /** * This file is part of the ramsey/collection library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT */ declare(strict_types=1); namespace Ramsey\Collection; /** * A collection represents a group of objects. * * Each object in the collection is of a specific, defined type. * * This is a direct implementation of `CollectionInterface`, provided for * the sake of convenience. * * Example usage: * * ``` php * $collection = new \Ramsey\Collection\Collection('My\\Foo'); * $collection->add(new \My\Foo()); * $collection->add(new \My\Foo()); * * foreach ($collection as $foo) { * // Do something with $foo * } * ``` * * It is preferable to subclass `AbstractCollection` to create your own typed * collections. For example: * * ``` php * namespace My\Foo; * * class FooCollection extends \Ramsey\Collection\AbstractCollection * { * public function getType() * { * return 'My\\Foo'; * } * } * ``` * * And then use it similarly to the earlier example: * * ``` php * $fooCollection = new \My\Foo\FooCollection(); * $fooCollection->add(new \My\Foo()); * $fooCollection->add(new \My\Foo()); * * foreach ($fooCollection as $foo) { * // Do something with $foo * } * ``` * * The benefit with this approach is that you may do type-checking on the * collection object: * * ``` php * if ($collection instanceof \My\Foo\FooCollection) { * // the collection is a collection of My\Foo objects * } * ``` * * @template T * @extends AbstractCollection<T> */ class Collection extends AbstractCollection { /** * Constructs a collection object of the specified type, optionally with the * specified data. * * @param string $collectionType The type or class name associated with this * collection. * @param array<array-key, T> $data The initial items to store in the collection. */ public function __construct(private readonly string $collectionType, array $data = []) { parent::__construct($data); } public function getType(): string { return $this->collectionType; } }