class JsonObject

Attributes

_json[RW]

Public Class Methods

accessors() click to toggle source
# File lib/random_api/json_object.rb, line 9
def accessors
  @accessors ||= {}
end
map_method(name, json_path, mutator = nil) click to toggle source
# File lib/random_api/json_object.rb, line 5
def map_method(name, json_path, mutator = nil)
  accessors[name] = JsonAccessor.new(json_path, mutator)
end
new(json) click to toggle source
# File lib/random_api/json_object.rb, line 16
def initialize(json)
  self._json = json
end

Public Instance Methods

method_missing(name, *args) click to toggle source
Calls superclass method
# File lib/random_api/json_object.rb, line 25
def method_missing(name, *args)
  name = name.to_sym
  if respond_to_missing?(name)
    accessor = self.class.accessors[name]
    accessor.(self._json)
  else
    super
  end
end
respond_to_missing?(name, include_private = false) click to toggle source
# File lib/random_api/json_object.rb, line 20
def respond_to_missing?(name, include_private = false)
  name = name.to_sym
  self.class.accessors.has_key?(name)
end