Type to use when defining custom
The serialized representation
The type being serialized
Function called to ensure the representation is valid
Function to convert the rep to the type
Function to convert the type to its rep
See Implementation
Type to use when defining custom