Sha256: 166c58f97785b3d744481ccaf2110800ac8d0f622d1b5448180bb2279304b0c8

Contents?: true

Size: 933 Bytes

Versions: 1

Compression:

Stored size: 933 Bytes

Contents

module Contentful
  # Useful methods for array-like resources that can be included if an
  # :items property exists
  module ArrayLike
    include Enumerable

    # Returns true for array-like resources
    #
    # @return [true]
    def array?
      true
    end

    # Delegates to items#each
    #
    # @yield [Contentful::Entry, Contentful::Asset]
    def each_item(&block)
      items.each(&block)
    end
    alias each each_item

    # Delegates to items#empty?
    #
    # @return [Boolean]
    def empty?
      items.empty?
    end

    # Delegetes to items#size
    #
    # @return [Number]
    def size
      items.size
    end
    alias length size

    # Delegates to items#[]
    #
    # @return [Contentful::Entry, Contentful::Asset]
    def [](*args)
      items[*args]
    end

    # Delegates to items#last
    #
    # @return [Contentful::Entry, Contentful::Asset]
    def last
      items.last
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
contentful-2.15.4 lib/contentful/array_like.rb