Releases: giannitedesco/xpdt
v0.3.1
v0.3.0
Make sure _impl.h
header goes into same dir as C file, since it's a private part of the implementation and included as #include "foo_impl.h"
v0.2.0
Add the ability to write C headers into a different dir than the C file.
v0.1.0
Lots of quality of life improvements..
- The registry (which assigns numbers to each message type) can now be automatically updated. So it doesn't fail with baffling errors when you add a new type and forget to update the registry.
xpdt --help
lists the available languages- All files required for a single language are generated in a single invocation now. This prevents race conditions with registry updates, but it also just makes things more efficient and easy to use since the inputs aren't being parsed multiple times.
- Provided C support code has been improved to put buf/len parameters back in the conventional order.
- Also added xfilemap C support code, and a new helper functions
- Fixed a bug in C code generation for modules without a registry
v0.0.5
Woops. Fixed mypy error in previous release.
v0.0.4
Recover from malformed inputs in enum stream by yielding an exception.
v0.0.3
First cut of multiplexed files support, where you can read/write structs of different types to and from the same file. A discriminator field and record length is prepended to each record.
Fields whose names begin with underscore are now considered hidden/reserved fields. They can be use to add padding and force specific alignments.
Improve the error messages in the tokenization stage.
Numerous improvements to the C and python code. Added support for new types: bytearray, stringlist, intstack.
v0.0.2
A new string type was added, as well as the ability to add reserved/padding fields which are set to all zeroes.
Some language-breaking changes were made: the "type" keyword changed to "struct" and the signed integer types were renamed to the more conventional "i8" ... "i64".
v0.0.1
Initial commit