| 139 | // Instruction type encoding: RETURN=[0], JUMP=[1,0], MATCH=[1,1,0], DEFAULT=[1,1,1] |
| 140 | constexpr uint8_t TYPE_BIT_SIZES[]{0, 0, 1}; |
| 141 | Instruction DecodeType(size_t& bitpos, const std::span<const std::byte> data) |
| 142 | { |
| 143 | return Instruction(DecodeBits(bitpos, data, 0, TYPE_BIT_SIZES)); |
| 144 | } |
| 145 | |
| 146 | // ASN encoding: Can encode ASNs from 1 to ~16.7 million. |
| 147 | // Uses variable-length encoding optimized for real-world ASN distribution. |
no test coverage detected