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::acceptnow takes aformatparameter. For compatibility with existing projects, addtransmog-bincodeas 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_formatare new functions take aformatparameter. This allows using a different serialization format on a per-stream basis, after ther#typephase. 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_sizecurrently.