モジュール: Mongoid::Matcher::Type Private

定義:
lib/mongoid/matcher/type.rb

Overview

このモジュールはプライベート API の一部です。 このモジュールは将来削除または変更される可能性があるため、可能な限り使用しないでください。

$type 式のメモリ内マッチャー。

クラスメソッドの概要を折りたたむ

クラスメソッドの詳細

一致するかどうか(存在、値、条件)= true| falseブール値

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

値が $type 式を満たすかどうかを返します。

パラメーター:

  • exists true | false

    値が存在するかどうか。

  • 価値 オブジェクト

    確認する値。

  • 条件 整数 | 配列<Integer>

    BSON 型の列挙に対応する $type 条件述語。

次の値を返します。

  • true | false

    値が一致するかどうか。

  • ブール値


22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# ファイル 'lib/mongoid/matcher/type.rb' は、 22行

MongoDB_function デフォルト 一致するかどうか(exists, 価値, 条件)
  条件 = ケース 条件
  次の場合: 配列
    条件
  次の場合: 整数
    [条件]
  else
    発生 Errors::InvalidQuery, "不明な $type 引数: #{条件} "
  end
  条件. 行う |条件|
    場合 one_matches?(exists, 価値, 条件)
      return true
    end
  end
  false
end

one_matches? (存在、値、条件)= true| falseブール値

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

値が単一の $type 式値を満たすかどうかを返します。

パラメーター:

  • exists true | false

    値が存在するかどうか。

  • 価値 オブジェクト

    確認する値。

  • 条件 (整数)

    BSON 型の列挙に対応する $type 条件述語。

次の値を返します。

  • true | false

    値が一致するかどうか。

  • ブール値


50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
# ファイル 'lib/mongoid/matcher/type.rb' は、 50行

MongoDB_function デフォルト one_matches?(exists, 価値, 条件)
  ケース 条件
  次の場合: 1
    double
    Float === 価値
  次の場合: 2
    string
    文字列 === 価値
  次の場合: 3
    # オブジェクト
    ハッシュ === 価値
  次の場合: 4
    # 配列
    配列 === 価値
  次の場合: 5
    # バイナリ データ
    BSON::バイナリ === 価値
  次の場合: 6
    #Undefined
    BSON::未定義 === 価値
  次の場合: 7
    # ObjectId
    BSON::ObjectId === 価値
  次の場合: 8
    # ブール値
    TrueClass === 価値 || FalseClass === 価値
  次の場合: 9
    # 日付
    日付 === 価値 || 時間 === 価値 || 日時 === 価値
  次の場合: 10
    #null
    exists & & nilClass === 価値
  次の場合: 11
    # 正規表現
    Regexp::Raw === 価値 || ::Regexp === 価値
  次の場合: 12
    DBPointer は非推奨
    BSON::DBポインタ === 価値
  次の場合: 13
    # JavaScript
    BSON::コード === 価値
  次の場合: 14
    # Symbolは非推奨
    シンボル === 価値 || BSON::シンボル::Raw === 価値
  次の場合: 15
    コードが非推奨のJavaScript
    BSON::CodeWithScopes === 価値
  次の場合: 16
    # 32ビット整数
    BSON::Int32 === 価値 || 整数 === 価値 & & (-2**32..2**32-1).include?(価値)
  次の場合: 17
    # タイムスタンプ
    BSON::タイムスタンプ === 価値
  次の場合: 18
    # Long
    BSON::Int64 === 価値 ||
      整数 === 価値 & &
        (-2**64..2**64-1).include?(価値) & &
        !(-2**32..2**32-1).include?(価値)
  次の場合: 19
    小数点
    BSON::Decimal128 === 価値
  次の場合: -1
    # minKey
    BSON::MinKey === 価値
  次の場合: 127
    # maxKey
    BSON::Max key === 価値
  else
    発生 Errors::InvalidQuery, "不明な $type 引数: #{条件} "
  end
end