pdo-document/tests/PjsonId.php

35 lines
659 B
PHP
Raw Permalink Normal View History

<?php
/**
* @author Daniel J. Summers <daniel@bitbadger.solutions>
* @license MIT
*/
declare(strict_types=1);
2024-06-29 15:46:16 +00:00
namespace Test;
use Square\Pjson\JsonDataSerializable;
/**
* A serializable ID wrapper class
*/
2024-08-30 13:24:25 +00:00
final class PjsonId implements JsonDataSerializable
2024-06-29 15:46:16 +00:00
{
public function __construct(protected string $value) { }
public function toJsonData(): string
{
return $this->value;
}
2024-08-30 13:24:25 +00:00
/**
* @param mixed $jd JSON data
* @param mixed[]|string $path path segments
* @return static
*/
2024-06-29 15:46:16 +00:00
public static function fromJsonData($jd, array|string $path = []): static
{
return new static($jd);
}
}