class Jikan::Search

Public Class Methods

new(json, type) click to toggle source
Calls superclass method Jikan::BaseEntity::new
# File lib/jikan/models/search.rb, line 4
def initialize(json, type)
  super(json)
  @type = type
  @search = true
end

Public Instance Methods

id() click to toggle source
# File lib/jikan/models/search.rb, line 14
def id
  iter { |i| i['id'] || i['mal_id'] }
end
is_search?() click to toggle source
# File lib/jikan/models/search.rb, line 10
def is_search?
  @search
end
result() click to toggle source

returns each result items wrapped in their respective objects

# File lib/jikan/models/search.rb, line 27
def result
  case @type
  when :anime
    iter { |i| Jikan::AnimeResult.new(i) }
  when :manga
    iter { |i| Jikan::MangaResult.new(i) }
  when :character
    iter { |i| Jikan::CharacterResult.new(i) }
  when :person
    iter { |i| Jikan::PersonResult.new(i) }
  end
end
title() click to toggle source
# File lib/jikan/models/search.rb, line 18
def title
  iter { |i| i['title'] }
end
url() click to toggle source
# File lib/jikan/models/search.rb, line 22
def url
  iter { |i| i['url'] }
end

Private Instance Methods

iter() { |item| ... } click to toggle source
# File lib/jikan/models/search.rb, line 42
def iter
  if @raw.respond_to? 'each'
    @raw['results'].map do |item|
      if block_given?
        yield item
      end
    end
  else
    raise ClientError, "#{@raw['error']}"
  end
end