PluginProbe
WCPOS – Point of Sale (POS) plugin for WooCommerce / 1.10.21
WCPOS – Point of Sale (POS) plugin for WooCommerce v1.10.21
1.10.25 1.10.24 1.10.23 1.10.22 1.10.21 1.10.20 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 All 169 releases
woocommerce-pos / vendor / ramsey / uuid / src / Rfc4122 / UuidV4.php

UuidV4.php in WCPOS – Point of Sale (POS) plugin for WooCommerce 1.10.21, at vendor/ramsey/uuid/src/Rfc4122/UuidV4.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\Rfc4122;
16
17 use Ramsey\Uuid\Codec\CodecInterface;
18 use Ramsey\Uuid\Converter\NumberConverterInterface;
19 use Ramsey\Uuid\Converter\TimeConverterInterface;
20 use Ramsey\Uuid\Exception\InvalidArgumentException;
21 use Ramsey\Uuid\Rfc4122\FieldsInterface as Rfc4122FieldsInterface;
22 use Ramsey\Uuid\Uuid;
23
24 /**
25 * Random, or version 4, UUIDs are randomly or pseudo-randomly generated 128-bit
26 * integers
27 *
28 * @psalm-immutable
29 */
30 final class UuidV4 extends Uuid implements UuidInterface
31 {
32 /**
33 * Creates a version 4 (random) UUID
34 *
35 * @param Rfc4122FieldsInterface $fields The fields from which to construct a UUID
36 * @param NumberConverterInterface $numberConverter The number converter to use
37 * for converting hex values to/from integers
38 * @param CodecInterface $codec The codec to use when encoding or decoding
39 * UUID strings
40 * @param TimeConverterInterface $timeConverter The time converter to use
41 * for converting timestamps extracted from a UUID to unix timestamps
42 */
43 public function __construct(
44 Rfc4122FieldsInterface $fields,
45 NumberConverterInterface $numberConverter,
46 CodecInterface $codec,
47 TimeConverterInterface $timeConverter
48 ) {
49 if ($fields->getVersion() !== Uuid::UUID_TYPE_RANDOM) {
50 throw new InvalidArgumentException(
51 'Fields used to create a UuidV4 must represent a '
52 . 'version 4 (random) UUID'
53 );
54 }
55
56 parent::__construct($fields, $numberConverter, $codec, $timeConverter);
57 }
58 }
59