module BinData::Int

def create_read_assemble_code(nbits, endian, signed)

def create_read_assemble_code(nbits, endian, signed)
  bits_per_word = bytes_per_word(nbits) * 8
  nwords        = nbits / bits_per_word
  idx = (0 ... nwords).to_a
  idx.reverse! if (endian == :big)
  parts = (0 ... nwords).collect do |i|
            if i.zero?
              "ints.at(#{idx[i]})"
            else
              "(ints.at(#{idx[i]}) << #{bits_per_word * i})"
            end
          end
  assemble_str = parts.join(" + ")
end