Homekit::TLV::Atom
Inherits BinData < Reference < Object
Constants
AFTER_DESERIALIZE = [] of Nil
BEFORE_SERIALIZE = [] of Nil
ENDIAN = ["little"]
KLASS_NAME = [Homekit::TLV::Atom]
PARTS = [{type: "basic", name: type_id, cls: UInt8, onlyif: nil, verify: nil, value: nil}, {type: "basic", name: length, cls: UInt8, onlyif: nil, verify: nil,
value: -> do
raw_data.size.to_u8
end}, {type: "bytes", name: raw_data, cls: Bytes, onlyif: nil, verify: nil, length: -> do
length
end,
value: nil}] of Nil
REMAINING = [] of Nil
Class methods
bit_fields
SourceInstance methods
__format__
A group or bit_field captures the endianness at its declaration point, so
declaring endian after one would silently leave it system-endian. Fail loudly.
acknowledgment?
Sourcedata
Sourceerror?
Sourceidentifier
Sourceignore?
Sourceknown_type?
Sourcelength
length=(length : UInt8)
method
Sourcenext_fragment
Sourcenext_fragment=(next_fragment : Atom | Nil)
Sourcepermissions
Sourceraw_data
raw_data=(raw_data : Bytes)
separator?
Sourceto_f
Sourceto_f32
Sourceto_f64
Sourceto_i
Sourceto_i16
Sourceto_i32
Sourceto_i64
Sourceto_i8
Sourceto_s
Returns a nicely readable and concise string representation of this object, typically intended for users.
This method should usually not be overridden. It delegates to
#to_s(IO) which can be overridden for custom implementations.
Also see #inspect.
to_u16
Sourceto_u32
Sourceto_u64
Sourceto_u8
Sourcetype
Sourcetype_id
we don't use enum_field so we can ignore new types that we don't know of yet
type_id=(type_id : UInt8)
we don't use enum_field so we can ignore new types that we don't know of yet