class FortyTwo::Response::Base

Public Class Methods

new(json) click to toggle source
# File lib/fortytwo/responses/base.rb, line 6
def initialize(json)
  return if json.nil?
  return instance_variable_set(instance_variable_name, json) if json.is_a?(Array)

  json.each do |key, value|
    key = key.chomp('?') if key.end_with?('?')
    instance_variable_set("@#{key}", value)
  end
end

Private Instance Methods

instance_variable_name() click to toggle source
# File lib/fortytwo/responses/base.rb, line 24
def instance_variable_name
  "@#{self.class.name.demodulize.underscore}"
end
parse(json, klass) click to toggle source
# File lib/fortytwo/responses/base.rb, line 18
def parse(json, klass)
  return json.map { |j| klass.new(j) } if json.is_a?(Array)
  return klass.new(json) if json
  nil
end