The marked field is not in the actual file
@VariableLength indicates the value is saved in a MIDI like format
Insists the field must be a certain value, like for magic numbers
@Tagged!Field indicates a tagged union. Each struct within should have @Tag(X) which is a value of Field
input range of ubytes...
@NumBytes!Field or @NumElements!Field controls length of embedded arrays
@Tagged!Field indicates a tagged union. Each struct within should have @Tag(X) which is a value of Field
For example @presentIf("version >= 2") int addedInVersion2;
A declarative file/stream loader/saver. You define structs with a handful of annotations, this read and writes them to/from files.