[ Index ]

PHP Cross Reference of Joomla 4.2.2 documentation

title

Body

[close]

/libraries/vendor/spomky-labs/cbor-php/src/OtherObject/ -> SimpleObject.php (source)

   1  <?php
   2  
   3  declare(strict_types=1);
   4  
   5  /*
   6   * The MIT License (MIT)
   7   *
   8   * Copyright (c) 2018-2020 Spomky-Labs
   9   *
  10   * This software may be modified and distributed under the terms
  11   * of the MIT license.  See the LICENSE file for details.
  12   */
  13  
  14  namespace CBOR\OtherObject;
  15  
  16  use CBOR\OtherObject as Base;
  17  use CBOR\Utils;
  18  use function chr;
  19  use InvalidArgumentException;
  20  
  21  final class SimpleObject extends Base
  22  {
  23      public static function supportedAdditionalInformation(): array
  24      {
  25          return [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 24];
  26      }
  27  
  28      public static function createFromLoadedData(int $additionalInformation, ?string $data): Base
  29      {
  30          return new self($additionalInformation, $data);
  31      }
  32  
  33      public function getNormalizedData(bool $ignoreTags = false)
  34      {
  35          if (null === $this->data) {
  36              return $this->getAdditionalInformation();
  37          }
  38  
  39          return Utils::binToInt($this->data);
  40      }
  41  
  42      /**
  43       * @return SimpleObject
  44       */
  45      public static function create(int $value): self
  46      {
  47          switch (true) {
  48              case $value < 24:
  49                  return new self($value, null);
  50              case $value < 256:
  51                  return new self(24, chr($value));
  52              default:
  53                  throw new InvalidArgumentException('The value is not a valid simple value');
  54          }
  55      }
  56  }


Generated: Wed Sep 7 05:41:13 2022 Chilli.vc Blog - For Webmaster,Blog-Writer,System Admin and Domainer