PluginProbe ʕ •ᴥ•ʔ
ShareThis Dashboard for Google Analytics / 3.1.2
ShareThis Dashboard for Google Analytics v3.1.2
3.3.2 trunk 1.0.7 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.1 2.1.2 2.1.3 2.1.4 2.1.5 2.2.5 2.3.5 2.3.6 2.3.7 2.3.8 2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.5.3 2.5.4 2.5.5 3.0.0 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.2.0 3.2.1 3.2.2 3.2.3 3.2.4 3.3.0 3.3.1
googleanalytics / lib / analytics-admin / vendor / ramsey / uuid / src / BinaryUtils.php
googleanalytics / lib / analytics-admin / vendor / ramsey / uuid / src Last commit date
Builder 3 years ago Codec 3 years ago Converter 3 years ago Exception 3 years ago Fields 3 years ago Generator 3 years ago Guid 3 years ago Lazy 3 years ago Math 3 years ago Nonstandard 3 years ago Provider 3 years ago Rfc4122 3 years ago Type 3 years ago Validator 3 years ago BinaryUtils.php 3 years ago DegradedUuid.php 3 years ago DeprecatedUuidInterface.php 3 years ago DeprecatedUuidMethodsTrait.php 3 years ago FeatureSet.php 3 years ago Uuid.php 3 years ago UuidFactory.php 3 years ago UuidFactoryInterface.php 3 years ago UuidInterface.php 3 years ago functions.php 3 years ago
BinaryUtils.php
64 lines
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 <ben@benramsey.com>
10 * @license http://opensource.org/licenses/MIT MIT
11 */
12
13 declare(strict_types=1);
14
15 namespace Ramsey\Uuid;
16
17 /**
18 * Provides binary math utilities
19 */
20 class BinaryUtils
21 {
22 /**
23 * Applies the RFC 4122 variant field to the 16-bit clock sequence
24 *
25 * @link http://tools.ietf.org/html/rfc4122#section-4.1.1 RFC 4122, § 4.1.1: Variant
26 *
27 * @param int $clockSeq The 16-bit clock sequence value before the RFC 4122
28 * variant is applied
29 *
30 * @return int The 16-bit clock sequence multiplexed with the UUID variant
31 *
32 * @psalm-pure
33 */
34 public static function applyVariant(int $clockSeq): int
35 {
36 $clockSeq = $clockSeq & 0x3fff;
37 $clockSeq |= 0x8000;
38
39 return $clockSeq;
40 }
41
42 /**
43 * Applies the RFC 4122 version number to the 16-bit `time_hi_and_version` field
44 *
45 * @link http://tools.ietf.org/html/rfc4122#section-4.1.3 RFC 4122, § 4.1.3: Version
46 *
47 * @param int $timeHi The value of the 16-bit `time_hi_and_version` field
48 * before the RFC 4122 version is applied
49 * @param int $version The RFC 4122 version to apply to the `time_hi` field
50 *
51 * @return int The 16-bit time_hi field of the timestamp multiplexed with
52 * the UUID version number
53 *
54 * @psalm-pure
55 */
56 public static function applyVersion(int $timeHi, int $version): int
57 {
58 $timeHi = $timeHi & 0x0fff;
59 $timeHi |= $version << 12;
60
61 return $timeHi;
62 }
63 }
64