模块:Mongo::Collection::View::Iterable
- 定义于:
- lib/ Mongo/ 集合/view/iterable.rb
Overview
为集合视图定义与迭代相关的行为,包括游标实例化。
实例属性摘要
Mongo::CursorHost 中包含的属性
实例方法摘要折叠
-
# close_query ⇒ nil (也:#kill_cursors)
清理与此查询关联的资源。
-
#每个{|Each| ... } ⇒ 枚举器
使用
View遍历查询返回的文档。
Mongo::CursorHost 中包含的方法
实例方法详细信息
# close_query ⇒ nil也称为: kill_cursors
注意:
此方法会传播关闭服务器端游标时发生的任何错误。
清理与此查询关联的资源。
如果存在与此查询关联的服务器游标,则通过向服务器发送 KillCursors 命令将其关闭。
72 73 74 75 76 |
# File 'lib/ Mongo/ 集合/view/iterable.rb', line 72 def close_query return 除非 @cursor @cursor.关闭 end |
#每个{|Each| ... } ⇒枚举器
使用View遍历查询返回的文档。
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/ Mongo/ 集合/view/iterable.rb', line 41 def 每(和块) @cursor = prefer_cached_cursor? ? cached_cursor : new_cursor_for_iteration return @cursor.to_enum 除非 block_given? limit_for_cached_query = Compute_limit_for_cached_query # TODO:而不是将整个(有限的)结果设立拉入 # 内存,这应该告诉游标有关限制的信息,然后让 #游标根据需要限制迭代。 cursor_to_iterate = if limit_for_cached_query @cursor.to_a[0...limit_for_cached_query] else @cursor end cursor_to_iterate.每(和块) end |