Sha256: 7d8717b49c43acd57c81c2aa49967e89ab2468049e5b8999e332a2d8fb22cd35

Contents?: true

Size: 765 Bytes

Versions: 9

Compression:

Stored size: 765 Bytes

Contents

module SportsDataApi
  module Mlb
    class Venues
      include Enumerable

      def initialize(xml)
        @venues = []
        xml = xml.first if xml.is_a? Nokogiri::XML::NodeSet
        xml.children.each do |venue|
          next unless venue.is_a? Nokogiri::XML::Element
          @venues << Venue.new(venue)
        end
        @venues
      end

      def [](search_index)
        found_index = @venues.index(search_index)
        unless found_index.nil?
          @venues[found_index]
        end
      end

      ##
      # Make the class Enumerable
      def each(&block)
        @venues.each do |venue|
          if block_given?
            block.call venue
          else
            yield venue
          end
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
sports_data_api-0.10.1 lib/sports_data_api/mlb/venues.rb
sports_data_api-0.10.0 lib/sports_data_api/mlb/venues.rb
sports_data_api-0.9.2 lib/sports_data_api/mlb/venues.rb
sports_data_api-0.2.4 lib/sports_data_api/mlb/venues.rb
sports_data_api-0.2.3 lib/sports_data_api/mlb/venues.rb
sports_data_api-0.2.2 lib/sports_data_api/mlb/venues.rb
sports_data_api-0.2.1 lib/sports_data_api/mlb/venues.rb
sports_data_api-0.2.0 lib/sports_data_api/mlb/venues.rb
sports_data_api-0.1.0 lib/sports_data_api/mlb/venues.rb