class RubyJisho::Results
Enumberable to store metadata and wrap Result
objects cleanly
Attributes
payload[R]
Public Class Methods
new(payload)
click to toggle source
# File lib/ruby_jisho/results.rb, line 10 def initialize(payload) @payload = JSON.parse(payload, symbolize_names: true) end
Public Instance Methods
each() { |r| ... }
click to toggle source
# File lib/ruby_jisho/results.rb, line 22 def each data.each { |r| yield r } end
keys()
click to toggle source
# File lib/ruby_jisho/results.rb, line 18 def keys payload.keys end
meta()
click to toggle source
# File lib/ruby_jisho/results.rb, line 14 def meta payload.fetch(:meta, {}) end
method_missing(sym, *args, &block)
click to toggle source
Calls superclass method
# File lib/ruby_jisho/results.rb, line 26 def method_missing(sym, *args, &block) if keys.include?(sym) payload.fetch(sym) else super end end
respond_to_missing?(method_name, include_private = false)
click to toggle source
Calls superclass method
# File lib/ruby_jisho/results.rb, line 34 def respond_to_missing?(method_name, include_private = false) keys.include?(method_name) || super end
Private Instance Methods
data()
click to toggle source
# File lib/ruby_jisho/results.rb, line 40 def data payload.fetch(:data, [{}]) .map { |r| Result.new(r) } end