module BinData::FloatingPoint

def create_read_code(precision, endian)

def create_read_code(precision, endian)
  if precision == :single
    unpack = (endian == :little) ? 'e' : 'g'
    nbytes = 4
  else # double_precision
    unpack = (endian == :little) ? 'E' : 'G'
    nbytes = 8
  end
  "io.readbytes(#{nbytes}).unpack('#{unpack}').at(0)"
end