Method: XeroRuby::Accounting::HistoryRecords#_to_hash

Defined in:
lib/xero-ruby/models/accounting/history_records.rb

#_to_hash(value, downcase: false) ⇒ Hash

Outputs non-array value in the form of hash For object, use to_hash. Otherwise, just return the value

Parameters:

  • value (Object)

    Any valid value

Returns:

  • (Hash)

    Returns the value in the form of hash



195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
# File 'lib/xero-ruby/models/accounting/history_records.rb', line 195

def _to_hash(value, downcase: false)
  if value.is_a?(Array)
    value.map do |v|
      v.to_hash(downcase: downcase)
    end
  elsif value.is_a?(Hash)
    {}.tap do |hash|
      value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
    end
  elsif value.respond_to? :to_hash
    value.to_hash(downcase: downcase)
  else
    value
  end
end