raise BitArrayError, "Position #{pos} must be an integer." unless pos.is_a? Fixnum
raise BitArrayError, "Position #{pos} outside of range: 0 ... #{@size}" unless (0 ... @size ).include? pos
- (@byte_array[byte_pos(pos)].ord & bit_pos(pos)) != 0
+ (@byte_array[byte_pos(pos)] & bit_pos(pos)) != 0
end
# Method that returns the number of bits set "on" in a bit array.
bits_on = 0
(0 ... self.byte_array.size).each do |byte|
- bits_on += @count_array[self.byte_array[byte].ord]
+ bits_on += @count_array[self.byte_array[byte]]
end
bits_on
raise BitArrayError, "Size must be an integer, not #{@size}" unless @size.is_a? Fixnum
raise BitArrayError, "Size must be positive, not #{@size}" unless @size > 0
- byte_array = ""
- byte_array << 0.chr * (((@size - 1) / BitsInChar) + 1)
-
- byte_array
-
NArray.byte(((@size - 1) / BitsInChar) + 1)
end