Google Cloud Bigtable Administration v2 API - Class Type.Types.Struct.Types.Encoding.Types.OrderedCodeBytes (3.23.0)

public sealed class Type.Types.Struct.Types.Encoding.Types.OrderedCodeBytes : IMessage<Type.Types.Struct.Types.Encoding.Types.OrderedCodeBytes>, IEquatable<Type.Types.Struct.Types.Encoding.Types.OrderedCodeBytes>, IDeepCloneable<Type.Types.Struct.Types.Encoding.Types.OrderedCodeBytes>, IBufferMessage, IMessage

Reference documentation and code samples for the Google Cloud Bigtable Administration v2 API class Type.Types.Struct.Types.Encoding.Types.OrderedCodeBytes.

Fields are encoded independently and concatenated with the fixed byte pair {0x00, 0x01} in between.

Any null (0x00) byte in an encoded field is replaced by the fixed byte pair {0x00, 0xFF}.

Fields that encode to the empty string "" have special handling:

  • If every field encodes to "", or if the STRUCT has no fields defined, then the STRUCT is encoded as the fixed byte pair {0x00, 0x00}.
  • Otherwise, the STRUCT only encodes until the last non-empty field, omitting any trailing empty fields. Any empty fields that aren't omitted are replaced with the fixed byte pair {0x00, 0x00}.

Examples:

  • STRUCT() -> "\00\00"
  • STRUCT("") -> "\00\00"
  • STRUCT("", "") -> "\00\00"
  • STRUCT("", "B") -> "\00\00" + "\00\01" + "B"
  • STRUCT("A", "") -> "A"
  • STRUCT("", "B", "") -> "\00\00" + "\00\01" + "B"
  • STRUCT("A", "", "C") -> "A" + "\00\01" + "\00\00" + "\00\01" + "C"

Since null bytes are always escaped, this encoding can cause size blowup for encodings like Int64.BigEndianBytes that are likely to produce many such bytes.

Sorted mode:

  • Fields are encoded in sorted mode.
  • All values supported by the field encodings are allowed
  • Element-wise order is preserved: A < B if A[0] < B[0], or if A[0] == B[0] && A[1] < B[1], etc. Strict prefixes sort first.

Distinct mode:

  • Fields are encoded in distinct mode.
  • All values supported by the field encodings are allowed.

Inheritance

object > Type.Types.Struct.Types.Encoding.Types.OrderedCodeBytes

Namespace

Google.Cloud.Bigtable.Admin.V2

Assembly

Google.Cloud.Bigtable.Admin.V2.dll

Constructors

OrderedCodeBytes()

public OrderedCodeBytes()

OrderedCodeBytes(OrderedCodeBytes)

public OrderedCodeBytes(Type.Types.Struct.Types.Encoding.Types.OrderedCodeBytes other)
Parameter
Name Description
other TypeTypesStructTypesEncodingTypesOrderedCodeBytes