encode abstract method
Encodes itself using the encoder.
The implementation should use one of the typed Encoders .encode...() methods to encode the value.
It is expected to call exactly one of the encoding methods a single time. Never more or less.
Implementation
void encode(Encoder encoder);