PluginProbe
Defender Security – Malware Scanner, Login Security & Firewall / 6.1.0
Defender Security – Malware Scanner, Login Security & Firewall v6.1.0
6.3.0 6.2.3 6.2.4 6.2.0 6.2.1 6.2.2 6.1.0 5.3.1 5.4.0 5.4.1 5.5.0 5.5.1 5.6.0 5.6.1 5.6.2 5.7.0 5.7.1 5.7.2 5.8.0 5.8.1 5.9.0 6.0.0 6.0.1 3.0.1 3.1.0 All 141 releases
defender-security / vendor / ramsey / uuid / src / Provider / Node / NodeProviderCollection.php

NodeProviderCollection.php in Defender Security – Malware Scanner, Login Security & Firewall 6.1.0, at vendor/ramsey/uuid/src/Provider/Node/NodeProviderCollection.php

59 lines 1.9 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/uuid 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 <[email protected]>
10 * @license http://opensource.org/licenses/MIT MIT
11 */
12
13 declare(strict_types=1);
14
15 namespace Ramsey\Uuid\Provider\Node;
16
17 use Ramsey\Collection\AbstractCollection;
18 use Ramsey\Uuid\Provider\NodeProviderInterface;
19 use Ramsey\Uuid\Type\Hexadecimal;
20
21 /**
22 * A collection of NodeProviderInterface objects
23 *
24 * @deprecated this class has been deprecated and will be removed in 5.0.0. The use-case for this class comes from a
25 * pre-`phpstan/phpstan` and pre-`vimeo/psalm` ecosystem, in which type safety had to be mostly enforced at runtime:
26 * that is no longer necessary, now that you can safely verify your code to be correct and use more generic types
27 * like `iterable<T>` instead.
28 *
29 * @extends AbstractCollection<NodeProviderInterface>
30 */
31 class NodeProviderCollection extends AbstractCollection
32 {
33 public function getType(): string
34 {
35 return NodeProviderInterface::class;
36 }
37
38 /**
39 * Re-constructs the object from its serialized form
40 *
41 * @param string $serialized The serialized PHP string to unserialize into a UuidInterface instance
42 */
43 public function unserialize($serialized): void
44 {
45 /** @var array<array-key, NodeProviderInterface> $data */
46 $data = unserialize($serialized, [
47 'allowed_classes' => [
48 Hexadecimal::class,
49 RandomNodeProvider::class,
50 StaticNodeProvider::class,
51 SystemNodeProvider::class,
52 ],
53 ]);
54
55 /** @phpstan-ignore-next-line */
56 $this->data = array_filter($data, fn ($unserialized): bool => $unserialized instanceof NodeProviderInterface);
57 }
58 }
59