Sha256: 20a480fc7888ec9719dcb1e3d18bf033f1c07c21665176d4393cd48a6d00ebce

Contents?: true

Size: 517 Bytes

Versions: 2

Compression:

Stored size: 517 Bytes

Contents

module Wikidata
  class Response
    extend Forwardable

    def_delegators :results, :size

    def initialize raw
      @raw = raw
    end

    def results
      return [] if empty?
      @_results ||= raw_results.map{|r| Wikidata::Item.new(r) }
    end

    def empty?
      @_empty ||= @raw.body['entities'].nil?
    end

    def inspect
      "<#{self.class} results: #{results.inspect}>"
    end

    protected

    def raw_results
      return [] if empty?
      @raw.body['entities'].values
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
wikidata-client-0.0.2 lib/wikidata/response.rb
wikidata-client-0.0.1 lib/wikidata/response.rb