Expand description
The tagged binary format of Creo sections (docs/src/research/creo-brep-preview.md).
A section is a stream of values whose schema is written on first use:
e0 TT name 00 defines field number N (in order of appearance) with type
TT, and the value follows. The writer remembers, for every field, which
transition came after it last time – how many struct levels close and
which field comes next – and only writes the tokens that differ
(f1 f2 f3/f4 N close levels, f7 NN names the next field, f0 is
“zero closes, explicitly”). Structs begin with e2/e3, e1 is null,
f8 N/f9 R C/fa K d… start arrays (dimensions are remembered per
field; fc R reuses the column count), fb precedes the elements of a
struct array, e4–e7 N repeat the previous array element.
Integers: 00–7f, 80–bf + 1 byte, c0–df + 2 bytes, e8–eb
- 1–4 bytes,
f5 <int>negated,f6= −1. Doubles: seedouble.
Modules§
- double
- Compact doubles of the tagged format.
Structs§
Enums§
Functions§
- parse
- Parses a tagged section.