codec = $codec; } /** @inheritDoc */ public function toJsonArray( $obj ): array { $result = $obj->jsonSerialize(); // Undo the work of JsonDeserializableTrait to avoid // redundant storage of TYPE_ANNOTATION unset( $result[JsonConstants::TYPE_ANNOTATION] ); return $result; } /** @inheritDoc */ public function newFromJsonArray( string $className, array $json ) { return $className::newFromJsonArray( $this->codec, $json ); } /** @inheritDoc */ public function jsonClassHintFor( string $className, string $keyName ) { return null; } }