モジュール: Mongoid::Criteria::Queryable::Expressions::Hash

定義:
lib/mongoid/criteria/queryable/extentions/hash.rb

Overview

ハッシュ クラスにクエリ タイプのキャスト動作を追加します。

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

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

# __add__ (object) =ハッシュ

マージ戦略 を使用してハッシュにオブジェクトを追加します。

例:

ハッシュにオブジェクトを追加する。

{ field: value }.__add__({ field: other_value })

パラメーター:

  • オブジェクト ハッシュ

    追加するその他のハッシュ。

次の値を返します。

  • ハッシュ

    オブジェクトが追加されたハッシュ。



20
21
22
# ファイル 'lib/mongoid/criteria/queryable/extentions/hash.rb' は、 20行を

デフォルト __add__(オブジェクト)
  apply_strategy(:__add__, オブジェクト)
end

#__add_from_array__(array) ⇒ Hash

このハッシュを指定された配列にマージします。

例:

ハッシュを 配列にマージします。

{ field: value }.__add_from_array__([ 1, 2 ])

パラメーター:

  • 配列 配列

    追加する配列。

次の値を返します。



32
33
34
# ファイル 'lib/mongoid/criteria/queryable/extentions/hash.rb' は、 32行を

デフォルト __add_from_array__(配列)
  { キー.最初に => 配列.__add__(values.最初に) }
end

#__deep_copy__Hash

このハッシュのディープ コピーを作成します。

例:

ハッシュのディープ コピーを作成します。

{ field: value }.__deep_copy__

次の値を返します。



102
103
104
105
106
107
108
# ファイル 'lib/mongoid/criteria/queryable/extentions/hash.rb' は、 102行を

デフォルト __deep_ copy__
  {}.タップ 行う |copy|
    each_pair 行う |キー, 価値|
      copy.store(キー, 価値.__deep_ copy__)
    end
  end
end

# __expand_compression__ =ハッシュ

展開されたオブジェクトを取得します。

例:

オブジェクトを展開して取得します。

obj.__expand_complex__

次の値を返します。



130
131
132
133
134
135
136
# ファイル 'lib/mongoid/criteria/queryable/extentions/hash.rb' は、 130行を

デフォルト __expand_compression__
  replacement = {}
  each_pair 行う |キー, 価値|
    replacement.mergeします。(キー.__expr_part__(価値.__expand_compression__))
  end
  replacement
end

# __Intersect__ (object) =ハッシュ

マージ戦略 を使用してハッシュにオブジェクトを追加します。

例:

ハッシュにオブジェクトを追加する。

{ field: value }.__intersect__({ field: other_value })

パラメーター:

  • オブジェクト ハッシュ

    交差するその他のハッシュ。

次の値を返します。

  • ハッシュ

    オブジェクトが交差されているハッシュ。



44
45
46
# ファイル 'lib/mongoid/criteria/queryable/extentions/hash.rb' は、 44行を

デフォルト __Intersect__(オブジェクト)
  apply_strategy(:__Intersect__, オブジェクト)
end

# __Intersect_from_array__ (配列) =ハッシュ

このハッシュを指定された配列にマージします。

例:

ハッシュを 配列にマージします。

{ field: value }.__intersect_from_array__([ 1, 2 ])

パラメーター:

  • 配列 配列

    交差する配列。

次の値を返します。



56
57
58
# ファイル 'lib/mongoid/criteria/queryable/extentions/hash.rb' は、 56行を

デフォルト __Intersect_from_array__(配列)
  { キー.最初に => 配列.__Intersect__(values.最初に) }
end

# __Intersect_from_object__ (object) =ハッシュ

このハッシュを指定されたオブジェクトにマージします。

例:

ハッシュを オブジェクトにマージします。

{ field: value }.__intersect_from_object__([ 1, 2 ])

パラメーター:

次の値を返します。



68
69
70
# ファイル 'lib/mongoid/criteria/queryable/extentions/hash.rb' は、 68行を

デフォルト __Intersect_from_object__(オブジェクト)
  { キー.最初に => オブジェクト.__Intersect__(values.最初に) }
end

#__sort_option__Hash

ソート オプションとしてハッシュを取得します。

例:

ソート オプションとしてハッシュを取得します。

{ field: 1 }.__sort_option__

次の値を返します。

  • ハッシュ

    ソート オプションとしてのハッシュ。



116
117
118
119
120
121
122
# ファイル 'lib/mongoid/criteria/queryable/extentions/hash.rb' は、 116行を

デフォルト __sort_option__
  タップ 行う |ハッシュ|
    ハッシュ.each_pair 行う |キー, 価値|
      ハッシュ.store(キー, Mongoid::条件::トランスレーター.to_direction(価値))
    end
  end
end

# __union__ (object) =ハッシュ

マージ戦略 を使用してハッシュにオブジェクトを追加します。

例:

ハッシュにオブジェクトを追加する。

{ field: value }.__union__({ field: other_value })

パラメーター:

  • オブジェクト ハッシュ

    その他のハッシュを和集合にします。

次の値を返します。

  • ハッシュ

    オブジェクトが結合されたハッシュ。



80
81
82
# ファイル 'lib/mongoid/criteria/queryable/extentions/hash.rb' は、 80行を

デフォルト __union__(オブジェクト)
  apply_strategy(:__union__, オブジェクト)
end

# __union_from_object__ (object) =ハッシュ

このハッシュを指定されたオブジェクトにマージします。

例:

ハッシュを オブジェクトにマージします。

{ field: value }.__union_from_object__([ 1, 2 ])

パラメーター:

次の値を返します。



92
93
94
# ファイル 'lib/mongoid/criteria/queryable/extentions/hash.rb' は、 92行を

デフォルト __union_from_object__(オブジェクト)
  { キー.最初に => オブジェクト.__union__(values.最初に) }
end