module Ruson::Converter

Public Instance Methods

convert_to_hash(accessors) click to toggle source
# File lib/ruson/converter.rb, line 3
def convert_to_hash(accessors)
  accessors.keys.inject({ id: id }) do |result, key|
    value = send(key)
    result[key.to_sym] = convert_array_to_hash_value(value)
    result
  end
end

Private Instance Methods

convert_array_to_hash_value(value) click to toggle source
# File lib/ruson/converter.rb, line 13
def convert_array_to_hash_value(value)
  if value.instance_of?(::Array)
    value.inject([]) { |result, v| result << convert_ruson_to_hash_value(v) }
  else
    convert_ruson_to_hash_value(value)
  end
end
convert_ruson_to_hash_value(value) click to toggle source
# File lib/ruson/converter.rb, line 21
def convert_ruson_to_hash_value(value)
  return value.to_hash if ruson_class?(value)
  value
end
ruson_class?(value) click to toggle source
# File lib/ruson/converter.rb, line 26
def ruson_class?(value)
  value.class < Ruson::Base
end