Set the key literal to add and rebuild.
Set the key literal to add and rebuild.
Next key literal to add
Unlike KeyLitParser.parsed, the behavior of serialize / deserialize is not changed.
Unlike KeyLitParser.parsed, the behavior of serialize / deserialize is not changed. Only the insertion path and acquisition path are changed when building the syntax tree.
("depth1" / "depth2").extend( "depth3".parsed(codec)(XXX.apply)(XXX.unapply) )
be equal
{ "depth1": { "depth2": { "depth3": "xxx" } } }
parsed type of codec.
internal codec.
Generate a Codec to serialize / deserialize this constructed literal.
Generate a Codec to serialize / deserialize this constructed literal.
( ("depth1" / "depth2" / "depth3").parsed(CaseClassCodec.from[XXX]) ++ ("depth1" / "depth2" / "depth4").parsed(CaseClassCodec.from[YYY]) ).apply(ZZZ.apply)(ZZZ.unapply)
be equal
{ "depth1": { "depth2": { "depth3": "xxx", "depth4": "yyy" } } }
Internal codec type
Follow the target JsonObject recursively from the constructed key literal.
Follow the target JsonObject recursively from the constructed key literal.
Root json object
json key literal set
Json key literal builder. Used to synthesize Codec.
Build practices.
json key literal set