Skip to content

Commit 6344564

Browse files
committed
fix: add JsonSerializable inheritance to Ltree value object
This fix issues when serializing Ltree with Symfony Serializer.
1 parent 8ed0a2f commit 6344564

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

src/MartinGeorgiev/Doctrine/DBAL/Types/ValueObject/Ltree.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,12 @@ public static function fromString(string $ltree): static
3838
return new static($branch); // @phpstan-ignore-line argument.type
3939
}
4040

41+
#[\Override]
42+
public function jsonSerialize(): array
43+
{
44+
return $this->branch;
45+
}
46+
4147
#[\Override]
4248
public function createLeaf(string $leaf): static
4349
{

src/MartinGeorgiev/Doctrine/DBAL/Types/ValueObject/LtreeInterface.php

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
namespace MartinGeorgiev\Doctrine\DBAL\Types\ValueObject;
66

7-
interface LtreeInterface extends \Stringable
7+
interface LtreeInterface extends \Stringable, \JsonSerializable
88
{
99
/**
1010
* @param list<non-empty-string> $branch
@@ -18,6 +18,12 @@ public function __construct(array $branch);
1818
*/
1919
public static function fromString(string $ltree): static;
2020

21+
/**
22+
* @return list<non-empty-string>
23+
*/
24+
#[\Override]
25+
public function jsonSerialize(): array;
26+
2127
/**
2228
* @param non-empty-string $leaf
2329
*

0 commit comments

Comments
 (0)