class BinData::StringArgProcessor

def sanitize_parameters!(obj_class, params)

def sanitize_parameters!(obj_class, params)
  params.warn_replacement_parameter(:initial_length, :read_length)
  params.must_be_integer(:read_length, :length)
  params.rename_parameter(:pad_left, :pad_front)
  params.sanitize(:pad_byte) { |byte| sanitized_pad_byte(byte) }
end

def sanitized_pad_byte(byte)

def sanitized_pad_byte(byte)
  pad_byte = byte.is_a?(Integer) ? byte.chr : byte.to_s
  if pad_byte.bytesize > 1
    raise ArgumentError, ":pad_byte must not contain more than 1 byte"
  end
  pad_byte
end