- Re-organized packages
- Added some configurable options for code generation
- Fixed the bug release-build is not working.
- Propagates (some part of) the .proto file's doc into the generated .rs files.
- Added ability to keep the unknown number field when deserializing
- Mostly internal code refactoring.
- Refactored the code generator so that it generates
TokenStreaminstead ofString.
- Re-worked the internal dependencies. I messed up a lot so starting a new version number...
- Restarted again from the scratch.
- Regression. No message traits and builders anymore.
- Planned to be implemented again, maybe...
- Fixed the bug that [packed=...] option was ignored.
- So many changes.
- The message struct does not have public fields anymore. Use the methods instead.
- Added getter and setter methods for the normal message structs and the bumpalo structs.
- Changed the internal implementation of the normal message struct and bumpalo struct.
These uses a
bitvecto manageoptionalfields' presence bit.
- Fixed that the compile does not pass in the latest rustc nightly (1.58).
- Changed the serializer method to use heap memory
- Changed the builder's
append_my_i32_field()methods for numerical types to acceptInto<i32>types.
- Changed the message trait's getter methods entirely.
- non-repeated field
foogeneratesfoo(&self) -> T,foo_opt(&self) -> Option<T>, andhas_foo(&self) -> bool. - repeated field interfaces are not changed.
- non-repeated field
- Changed the message trait's string & bytes type from an associated type to just a
&strand&[u8].- As an effect of this, the generated code size is shrinked ~20%.
First publish.