The current code cannot handle the ParloadRaw type, serde is unable to deserialize the json with a raw payload fields.
This is because serde cannot handle two fields with the same name and I haven't found a way to make this work like that. Instead we have to use a untagged enum that share both possible payload values.
Therefore this is an API break: NamedExpression now only contains one Payload field which contains the Payload enum, the old Payload type is renamed to PayloadField.
Lastly, export the PayloadRaw fields so they can be used externally.
The current code cannot handle the ParloadRaw type, serde is unable to deserialize the json with a raw payload fields.
This is because serde cannot handle two fields with the same name and I haven't found a way to make this work like that. Instead we have to use a untagged enum that share both possible payload values.
Therefore this is an API break: NamedExpression now only contains one Payload field which contains the Payload enum, the old Payload type is renamed to PayloadField.
Lastly, export the PayloadRaw fields so they can be used externally.