モジュール: Mongo::Collection::View::Iterable

次のことが含まれます。
Mongo::CursorHost
次のドキュメントに含まれます。
Mongo::Collection::View 、集計::動作
定義:
lib/mongo/ コレクション/view/iterable.rb

Overview

カーソルのインスタンス化を含む、コレクション ビューの反復関連の動作を定義します。

以来

  • 2.0.0

インスタンス属性の概要

Mongo::CursorHost から含まれる属性

#cursor, #timeout_mode

インスタンス メソッドの概要を折りたたむ

Mongo::CursorHost に含まれるメソッド

#validate_timeout_mode!

インスタンス メソッドの詳細

# close_query = nil別名: kill_cursors

注:

このメソッドは、サーバー側のカーソルを閉じるときに発生するすべてのエラーを伝達します。

このクエリに関連付けられているリソースをクリーンアップします。

このクエリに関連付けられているサーバー カーソルがある場合は、サーバーに killCursors コマンドを送信することで閉じられます。

次の値を返します。

  • (nil)

    常に nil です。

次の値が発生します。

  • Error::OperationFailure::ファミリー

    サーバー カーソルの閉じに失敗した場合。

以来

  • 2.1.0



72
73
74
75
76
# ファイル 'lib/mongo/ コレクション/view/iterable.rb' は、72 行

デフォルト close_query
  return ただし、 @cursor

  @cursor.閉じる
end

{|Each| ... } =列挙型

このViewを含むクエリによって返されたドキュメントを反復処理します。

例:

ビューの結果を反復処理します。

view.each do |document|
  p document
end

生成パラメータ:

  • ハッシュ

    一致するドキュメント。

次の値を返します。

  • 列挙型

    列挙型。

以来

  • 2.0.0



41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# ファイル 'lib/mongo/ コレクション/view/iterable.rb' は、41 行

デフォルト (&ブロック)
  @cursor = prefer_cached_cursor? ? cached_cursor : new_cursor_for_iteration
  return @cursor.to_enum ただし、 ブロック_指定

  limit_for_ cached_query = compute_limit_for_ cached_query

  TODO: (限定された)結果セット全体を に取り込むのではなく
  # メモリ、これはカーソルに制限について指示してから、
  必要に応じて カーソルは反復を制限します
  cursor_to_itrate = 場合 limit_for_ cached_query
                        @cursor.to_a[0...limit_for_ cached_query]
                      else
                        @cursor
                      end

  cursor_to_itrate.(&ブロック)
end