Sha256: 6210bd124afd06f7421b76297a9dea2feeba3d54f7d22cfc0abc93828d1d0e18
Contents?: true
Size: 1.01 KB
Versions: 12
Compression:
Stored size: 1.01 KB
Contents
module RDF ## # @since 0.2.0 module Countable extend RDF::Util::Aliasing::LateBound # Extends Enumerator with {Countable}, which is used by {Countable#enum_for} class Enumerator < ::Enumerator include RDF::Countable end ## # Returns `true` if `self` contains no RDF statements. # # @return [Boolean] def empty? each {return false} true end ## # Returns the number of RDF statements in `self`. # # @return [Integer] def count count = 0 each { count += 1 } count end alias_method :size, :count ## # @private # @param [Symbol, #to_sym] method # @return [Enumerator] # @see Object#enum_for def enum_for(method = :each, *args) # Ensure that enumerators support the `#empty?` and `#count` methods: this = self Countable::Enumerator.new do |yielder| this.send(method, *args) {|y| yielder << y} end end alias_method :to_enum, :enum_for end # Countable end # RDF
Version data entries
12 entries across 12 versions & 1 rubygems