module BinaryExtensions

Methods for reading values from a binary stream

Public Instance Methods

read_ascii(num_bytes) click to toggle source
# File lib/file_data/core_extensions/binary_extensions.rb, line 10
def read_ascii(num_bytes)
  each_byte.take(num_bytes).map(&:chr).join
end
read_value(num_bytes) click to toggle source
# File lib/file_data/core_extensions/binary_extensions.rb, line 3
def read_value(num_bytes)
  bytes = each_byte.take(num_bytes)
  bytes.reverse! if @is_little_endian

  bytes.inject { |total, val| (total << 8) + val }
end