struct Goban::BitStream
- Goban::BitStream
- Struct
- Value
- Object
Overview
An array data structure that holds bits.
Based on the BitArray
object of the standard library.
Included Modules
- Comparable(Goban::BitStream)
- Indexable::Mutable(Bool)
Defined in:
goban/bitstream.crConstant Summary
-
PAD0 =
236
-
PAD1 =
17
Constructors
Instance Method Summary
-
#<=>(other : BitStream)
The comparison operator.
-
#bits : Pointer(UInt8)
Pointer to the underlying UInt8 representation.
-
#inspect(io : IO)
Appends this struct's name and instance variables names and values to the given IO.
-
#read_only : Bool
Whether this bit stream is read-only.
-
#read_pos : Int32
Current tail index of the reader.
-
#read_pos=(read_pos : Int32)
Current tail index of the reader.
-
#size : Int32
Size of the array.
-
#write_pos : Int32
Current tail index of the writer.
-
#write_pos=(write_pos : Int32)
Current tail index of the writer.
Constructor Detail
Instance Method Detail
The comparison operator. Returns 0
if the two objects are equal,
a negative number if this object is considered less than other,
a positive number if this object is considered greater than other,
or nil
if the two objects are not comparable.
Subclasses define this method to provide class-specific ordering.
The comparison operator is usually used to sort values:
# Sort in a descending way:
[3, 1, 2].sort { |x, y| y <=> x } # => [3, 2, 1]
# Sort in an ascending way:
[3, 1, 2].sort { |x, y| x <=> y } # => [1, 2, 3]
Appends this struct's name and instance variables names and values to the given IO.
struct Point
def initialize(@x : Int32, @y : Int32)
end
end
p1 = Point.new 1, 2
p1.to_s # "Point(@x=1, @y=2)"
p1.inspect # "Point(@x=1, @y=2)"
Current tail index of the reader. This increases as more bits are read.
Current tail index of the writer. This increases as more bits are written.