aboutsummaryrefslogtreecommitdiff
path: root/tools/lxdrgen-go.awk
Commit message (Collapse)AuthorAgeFilesLines
* lxdrgen-go: improve usabilityPřemysl Eric Janouch2024-11-071-21/+29
| | | | | | | | | | | | | | | Turning union tags into read-only methods of actual types: - eliminates duplicated JSON unmarshalling of tags, - makes AppendTo/ConsumeFrom symmetrical in nature, - eliminates duplicated AppendTo code, - eliminates trivial AppendTo methods for subtypes without fields, - gives us an opportunity to use a more specific interface than "any" (the type being anonymous is an acknowledged inconvenience). Implementing our own json.Marshalers some time ago (for performance reasons) has made this easier to implement. Also rename "Interface" fields to more suitable "Variant".
* Add a C++ backend for LibertyXDRPřemysl Eric Janouch2023-07-071-1/+1
| | | | | Also change the C backend so that it also de/serializes unions without any other fields besides the tag.
* lxdrgen-swift: fix warnings with exhaustive unionsPřemysl Eric Janouch2023-07-061-1/+1
|
* Add a Swift backend for LibertyXDRPřemysl Eric Janouch2023-07-061-8/+7
|
* Import protocol code generator from xK, add testsPřemysl Eric Janouch2022-09-301-0/+541
Also add a VIM syntax highlighting file. This also fixes some previously untriggered bugs.