Cloud Firestore V1 API - Class Google::Cloud::Firestore::V1::BitSequence (v1.0.0)

Reference documentation and code samples for the Cloud Firestore V1 API class Google::Cloud::Firestore::V1::BitSequence.

A sequence of bits, encoded in a byte array.

Each byte in the bitmap byte array stores 8 bits of the sequence. The only exception is the last byte, which may store 8 or fewer bits. The padding defines the number of bits of the last byte to be ignored as "padding". The values of these "padding" bits are unspecified and must be ignored.

To retrieve the first bit, bit 0, calculate: (bitmap[0] & 0x01) != 0. To retrieve the second bit, bit 1, calculate: (bitmap[0] & 0x02) != 0. To retrieve the third bit, bit 2, calculate: (bitmap[0] & 0x04) != 0. To retrieve the fourth bit, bit 3, calculate: (bitmap[0] & 0x08) != 0. To retrieve bit n, calculate: (bitmap[n / 8] & (0x01 << (n % 8))) != 0.

The "size" of a BitSequence (the number of bits it contains) is calculated by this formula: (bitmap.length * 8) - padding.

Inherits

  • Object

Extended By

  • Google::Protobuf::MessageExts::ClassMethods

Includes

  • Google::Protobuf::MessageExts

Methods

#bitmap

def bitmap() -> ::String
Returns
  • (::String) — The bytes that encode the bit sequence. May have a length of zero.

#bitmap=

def bitmap=(value) -> ::String
Parameter
  • value (::String) — The bytes that encode the bit sequence. May have a length of zero.
Returns
  • (::String) — The bytes that encode the bit sequence. May have a length of zero.

#padding

def padding() -> ::Integer
Returns
  • (::Integer) — The number of bits of the last byte in bitmap to ignore as "padding". If the length of bitmap is zero, then this value must be 0. Otherwise, this value must be between 0 and 7, inclusive.

#padding=

def padding=(value) -> ::Integer
Parameter
  • value (::Integer) — The number of bits of the last byte in bitmap to ignore as "padding". If the length of bitmap is zero, then this value must be 0. Otherwise, this value must be between 0 and 7, inclusive.
Returns
  • (::Integer) — The number of bits of the last byte in bitmap to ignore as "padding". If the length of bitmap is zero, then this value must be 0. Otherwise, this value must be between 0 and 7, inclusive.