Repository navigation
eolib v0.1.0-beta.4
Pre-release
Pre-release
·
6 commits
to master
since this release
Added
- Named hardcoded fields now generate a
DEFAULT_<FIELD>class constant with the spec value, e.g.InitInitClientPacket::DEFAULT_PROTOCOL_VERSION. - XML comments in the protocol files are now generated as documentation comments. Comments on dummies and other instructions without a member are added as
@noteitems to the documentation of the containing type, prefixed with a description of the instruction (e.g. "The dummy byte (always 255): …"), and comments in empty switch cases are added to the documentation of the switch data member. Comments on unnamed hardcoded fields are omitted, since those values aren't visible to consumers. - Developer documentation for contributors:
docs/architecture.mddescribes how the library is organized and how its parts work together, anddocs/generator.mddescribes howeolib-protocol-gengenerates the protocol code.
Changed
- Named hardcoded fields are now ordinary data members instead of
static constexprconstants. They are deserialized, compared and included inToString(), and serialize their value, so deserialized values round-trip exactly and set values are sent. A zero value is serialized as the default value, unless the object was deserialized. - Protocol comments that are wrapped across several lines in the XML are joined into one line in the generated documentation comments.
- Reorganized the
eolib-protocol-gensource into one header and source file per class. The generated code is unchanged.
Updated
- Pulled in changes for eo-protocol, with impact to generated code:
- Name hardcoded client fields verified by the official server
- Pulled in changes for eo-captured-packets for test parity with protocol changes.