mirror of
https://github.com/danog/Valinor.git
synced 2024-11-26 20:24:40 +01:00
c37ac1e259
It is now possible to register a static method constructor that can be inherited by a child class. The constructor will then be used correctly to map the child class. ```php abstract class ClassWithStaticConstructor { public string $value; final private function __construct(string $value) { $this->value = $value; } public static function from(string $value): static { return new static($value); } } final class ChildClass extends ClassWithStaticConstructor {} (new MapperBuilder()) // The constructor can be used for every child of the parent class ->registerConstructor(ClassWithStaticConstructor::from(...)) ->mapper() ->map(ChildClass::class, 'foo'); ``` |
||
---|---|---|
.. | ||
Identifier.php | ||
StaticMethodConstructor.php |