PluginProbe
Media Cloud Sync / 1.2.5
Media Cloud Sync v1.2.5
1.4.2 1.4.1 1.4.0 1.3.12 1.3.11 1.3.10 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.1.0 1.1.1 1.2.0 1.2.10 1.2.11 1.2.12 1.2.13 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 All 36 releases
media-cloud-sync / includes / sdk / google / ramsey / uuid / src / Converter / Number / GenericNumberConverter.php

GenericNumberConverter.php in Media Cloud Sync 1.2.5, at includes/sdk/google/ramsey/uuid/src/Converter/Number/GenericNumberConverter.php

58 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 declare (strict_types=1);
13 namespace Dudlewebs\WPMCS\Ramsey\Uuid\Converter\Number;
14
15 use Dudlewebs\WPMCS\Ramsey\Uuid\Converter\NumberConverterInterface;
16 use Dudlewebs\WPMCS\Ramsey\Uuid\Math\CalculatorInterface;
17 use Dudlewebs\WPMCS\Ramsey\Uuid\Type\Integer as IntegerObject;
18 /**
19 * GenericNumberConverter uses the provided calculator to convert decimal
20 * numbers to and from hexadecimal values
21 *
22 * @psalm-immutable
23 */
24 class GenericNumberConverter implements NumberConverterInterface
25 {
26 /**
27 * @var CalculatorInterface
28 */
29 private $calculator;
30 public function __construct(CalculatorInterface $calculator)
31 {
32 $this->calculator = $calculator;
33 }
34 /**
35 * @inheritDoc
36 * @psalm-pure
37 * @psalm-return numeric-string
38 * @psalm-suppress MoreSpecificReturnType we know that the retrieved `string` is never empty
39 * @psalm-suppress LessSpecificReturnStatement we know that the retrieved `string` is never empty
40 */
41 public function fromHex(string $hex): string
42 {
43 return $this->calculator->fromBase($hex, 16)->toString();
44 }
45 /**
46 * @inheritDoc
47 * @psalm-pure
48 * @psalm-return non-empty-string
49 * @psalm-suppress MoreSpecificReturnType we know that the retrieved `string` is never empty
50 * @psalm-suppress LessSpecificReturnStatement we know that the retrieved `string` is never empty
51 */
52 public function toHex(string $number): string
53 {
54 /** @phpstan-ignore-next-line PHPStan complains that this is not a non-empty-string. */
55 return $this->calculator->toBase(new IntegerObject($number), 16);
56 }
57 }
58