Add Customizable Serialization support through Transmog #39
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request brings in support for Transmog, allowing flexibility in configuring serialization formats. Closes #28.
This is currently a breaking change.
Connecting::accept
now takes aformat
parameter. For compatibility with existing projects, addtransmog-bincode
as a dependency, and pass intransmog_bincode::Bincode::default()
. The positive side of this breaking change is that it puts the user in full control of their bincode serialization settings. The basic example diff shows the net effect of this breakage.Incoming::accept_with_format
/Connection::open_stream_with_format
are new functions take aformat
parameter. This allows using a different serialization format on a per-stream basis, after ther#type
phase. The existing functions call through to these new functions passing in the existing format used forr#type
.Things left to do:
Pot
-- a format that doesn't supportserialized_size
currently.