class Mongoo::Cursor
Attributes
mongo_cursor[RW]
Public Class Methods
new(obj_class, mongo_cursor)
click to toggle source
# File lib/mongoo/cursor.rb, line 7 def initialize(obj_class, mongo_cursor) @obj_class = obj_class @mongo_cursor = mongo_cursor end
Public Instance Methods
batch_size(size=0)
click to toggle source
# File lib/mongoo/cursor.rb, line 49 def batch_size(size=0) @mongo_cursor.batch_size(size) self end
count()
click to toggle source
# File lib/mongoo/cursor.rb, line 30 def count @mongo_cursor.count end
each() { |obj_from_doc(doc)| ... }
click to toggle source
# File lib/mongoo/cursor.rb, line 20 def each @mongo_cursor.each do |doc| yield obj_from_doc(doc) end end
limit(number_to_return=nil)
click to toggle source
# File lib/mongoo/cursor.rb, line 39 def limit(number_to_return=nil) @mongo_cursor.limit(number_to_return) self end
method_missing(name, *args)
click to toggle source
Calls superclass method
# File lib/mongoo/cursor.rb, line 54 def method_missing(name, *args) if @mongo_cursor.respond_to?(name) @mongo_cursor.send name, *args else super end end
next_document()
click to toggle source
# File lib/mongoo/cursor.rb, line 12 def next_document if doc = @mongo_cursor.next_document obj_from_doc(doc) end end
Also aliased as: next
obj_from_doc(doc)
click to toggle source
# File lib/mongoo/cursor.rb, line 62 def obj_from_doc(doc) obj = nil if Mongoo::IdentityMap.on? if obj = Mongoo::IdentityMap.read(doc["_id"]) obj.merge!(doc) end end obj ||= @obj_class.new(doc, true) Mongoo::IdentityMap.write(obj) if Mongoo::IdentityMap.on? obj end
skip(number_to_return=nil)
click to toggle source
# File lib/mongoo/cursor.rb, line 44 def skip(number_to_return=nil) @mongo_cursor.skip(number_to_return) self end
sort(key_or_list, direction=nil)
click to toggle source
# File lib/mongoo/cursor.rb, line 34 def sort(key_or_list, direction=nil) @mongo_cursor.sort(key_or_list, direction) self end
to_a()
click to toggle source
# File lib/mongoo/cursor.rb, line 26 def to_a @mongo_cursor.to_a.collect { |doc| obj_from_doc(doc) } end