PluginProbe
WCPOS – Point of Sale (POS) plugin for WooCommerce / 1.10.13
WCPOS – Point of Sale (POS) plugin for WooCommerce v1.10.13
1.10.19 1.10.18 1.10.17 1.10.16 1.10.15 1.10.13 1.10.14 1.10.12 1.10.11 1.10.10 1.10.9 1.10.8 untagged-3d9b7ccddc54df87c672 1.10.7 1.10.6 1.10.5 1.10.3 1.10.4 1.10.2 1.10.1 1.10.0 1.9.17 1.9.15 1.9.16 1.9.14 All 163 releases
woocommerce-pos / vendor / ramsey / collection / src / Set.php

Set.php in WCPOS – Point of Sale (POS) plugin for WooCommerce 1.10.13, at vendor/ramsey/collection/src/Set.php

68 lines 1.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 /**
4 * This file is part of the ramsey/collection library
5 *
6 * For the full copyright and license information, please view the LICENSE
7 * file that was distributed with this source code.
8 *
9 * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com>
10 * @license http://opensource.org/licenses/MIT MIT
11 */
12
13 declare(strict_types=1);
14
15 namespace Ramsey\Collection;
16
17 /**
18 * A set is a collection that contains no duplicate elements.
19 *
20 * Great care must be exercised if mutable objects are used as set elements.
21 * The behavior of a set is not specified if the value of an object is changed
22 * in a manner that affects equals comparisons while the object is an element in
23 * the set.
24 *
25 * Example usage:
26 *
27 * ``` php
28 * $foo = new \My\Foo();
29 * $set = new Set(\My\Foo::class);
30 *
31 * $set->add($foo); // returns TRUE, the element don't exists
32 * $set->add($foo); // returns FALSE, the element already exists
33 *
34 * $bar = new \My\Foo();
35 * $set->add($bar); // returns TRUE, $bar !== $foo
36 * ```
37 *
38 * @template T
39 * @extends AbstractSet<T>
40 */
41 class Set extends AbstractSet
42 {
43 /**
44 * The type of elements stored in this set
45 *
46 * A set's type is immutable. For this reason, this property is private.
47 */
48 private string $setType;
49
50 /**
51 * Constructs a set object of the specified type, optionally with the
52 * specified data.
53 *
54 * @param string $setType The type (FQCN) associated with this set.
55 * @param array<array-key, T> $data The initial items to store in the set.
56 */
57 public function __construct(string $setType, array $data = [])
58 {
59 $this->setType = $setType;
60 parent::__construct($data);
61 }
62
63 public function getType(): string
64 {
65 return $this->setType;
66 }
67 }
68