module Pokegem

Constants

BASE_URL
RESOURCES
VERSION

Public Class Methods

get(resource, n) click to toggle source
# File lib/pokegem.rb, line 12
def get(resource, n)
  raise "Invalid resource, select from #{RESOURCES.join(', ')}" unless RESOURCES.include?(resource)
  (@cache ||= init_hash)[resource][n] ||=
    Typhoeus.get("#{BASE_URL}/#{resource}/#{n}", followlocation: true).options[:response_body]
end
get_obj(resource, n) click to toggle source
# File lib/pokegem.rb, line 18
def get_obj(resource, n)
  (@obj_cache ||= init_hash)[resource][n] ||= OpenStruct.new(JSON.parse(get(resource, n)))
end
init_hash() click to toggle source
# File lib/pokegem.rb, line 10
def init_hash; RESOURCES.reduce({}) { |h, r| h.merge! r => {} } end