Data section encoding and decoding for Paraglob v2
Provides full MMDB-compatible data encoding for storing pattern-associated data. Implements the complete MaxMind DB data type specification.
Supported Types
Complete MMDB type support:
- Pointer: Reference to another data item (with base handling)
- String: UTF-8 text data
- Double: 64-bit floating point (IEEE 754)
- Bytes: Raw byte arrays
- Uint16: Unsigned 16-bit integers
- Uint32: Unsigned 32-bit integers
- Map: Key-value pairs (string keys)
- Int32: Signed 32-bit integers
- Uint64: Unsigned 64-bit integers
- Uint128: Unsigned 128-bit integers
- Array: Ordered lists of values
- Bool: Boolean values
- Float: 32-bit floating point (IEEE 754)
Format
Uses MMDB encoding: control byte(s) followed by data. Control byte encodes type (3 bits) and size/payload (5 bits).