module BinData::Int
def create_read_assemble_code(nbits, endian)
def create_read_assemble_code(nbits, endian) nwords = nbits / bits_per_word(nbits) idx = (0...nwords).to_a idx.reverse! if endian == :big parts = (0...nwords).collect do |i| "(ints.at(#{idx[i]}) << #{bits_per_word(nbits) * i})" end parts[0] = parts[0].sub(/ << 0\b/, "") # Remove " << 0" for optimisation parts.join(" + ") end