Code generator for C++ from YAML to generate network protocol parsers
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
 
 

71 rader
1.4 KiB

includes:
- <array>
classes:
-
name: record_identifier
attributes:
-
name: uuid
out_type: std::array<unsigned char, 16>
start: 0
-
name: x
out_type: uint32_t
start: 16
-
name: y
out_type: uint32_t
start: 20
-
name: record
attributes:
-
name: record_id
out_type: std::array<unsigned char, 24>
start: 0
-
name: timestamp
out_type: uint64_t
start: 24
attributeafters:
-
name: offset
out_type: uint64_t
after_name: timestamp
bitfields:
-
name: flags
out_type: uint16_t
start: 40
mask: 0b0000000000000111
-
name: v_flag
out_type: uint16_t
after_name: offset
start: 40
mask: 0b0000000000000100
-
name: r_flags
out_type: uint16_t
start: 40
mask: 0b0000000000000010
-
name: c_flags
out_type: uint16_t
start: 40
mask: 0b0000000000000001
-
name: confirmed
out_type: uint16_t
start: 40
mask: 0b0000000000000001
-
name: validated
out_type: uint16_t
start: 40
mask: 0b0000000000000101
-
name: removed
out_type: uint16_t
start: 40
mask: 0b0000000000000010