Skip to main content

Module binary

Module binary 

Source
Expand description

GraphBinary Serialization

Binary serialization format for graph traversal components.

§Format

Each value is serialized as:

┌──────────┬───────────┬────────────┬─────────┐
│ type_code│ type_info │ value_flag │  value  │
│  (1 byte)│ (optional)│  (1 byte)  │(variable│
└──────────┴───────────┴────────────┴─────────┘

§Type Codes

  • 0x00: Custom
  • 0x01: Int32
  • 0x02: Int64
  • 0x03: Float
  • 0x04: Double
  • 0x05: String
  • 0x06: List
  • 0x07: Map
  • 0x08: Set
  • 0x09: UUID
  • 0x0A: Edge
  • 0x0B: Vertex
  • 0x0C: Path
  • 0x0D: Property
  • 0x0E: Traverser
  • 0x0F: Bytecode (traversal plan)
  • 0x10: Binding
  • 0x11: Step (custom step type)

§Value Flags

  • 0x00: Value present
  • 0x01: Null value
  • 0x02: Bulk value (for Traverser)

§References

  • TinkerPop GraphBinary specification
  • Gremlin bytecode format

Structs§

BinaryDeserializer
Binary deserializer
BinarySerializer
Binary serializer
Bytecode
Bytecode representation for traversal plans
Instruction
Single bytecode instruction
TypeInfo
Type information for custom types

Enums§

BinaryValue
Binary value representation
TypeCode
Type codes for GraphBinary serialization
ValueFlag
Value flags for null/bulk handling