Módulo: Mongoid::Matcher::FieldOperator Privado

Definido em:
lib/mongoid/matcher/field_operator.rb

Visão geral

Este módulo faz parte de uma API privada. Você deve evitar usar este módulo, se possível, pois ele pode ser removido ou alterado no futuro.

O módulo Singleton fornece pesquisa de correspondentes de operador de query relacionados a valores de campo .

Colapsode resumo constante

MAPA =

Essa constante faz parte de uma API privada. Você deve evitar usar essa constante, se possível, pois ela pode ser removida ou alterada no futuro.

{
  '$all' => Todos,
  '$bitsAllClear' => BitsAllLimpar,
  '$bitsAllSet' => BitsAllSet,
  '$bitsAnyClear' => BitsAnyClear,
  '$bitsAnySet' => BitsAnySet,
  '$elemMatch' => ElemMatch,
  '$eq' => Eq,
  '$existe' => Existe,
  '$gt' => GMT,
  '$gte' => obter,
  '$in' => In,
  '$lt' => lt,
  '$lte' => atrasado,
  '$mod' => Mod,
  '$nin' => nin,
  '$ne' => um,
  '$not' => Not,
  '$regex' => expressão regular,
  '$size' => Tamanho,
  '$type' => Tipo,
}.congelar

Recolhimento do Resumo do método de classe

Detalhes do método de classe

.apply_array_field_operator(existe, valor, condição) ➤ Objeto

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

TODO:

Refatore isto, pois ele é relevante apenas para $lt, $lte, $gt, $gte.

Usado para avaliar operadores de comparação $lt, $lte, $gt, $gte.



54
55
56
57
58
59
60
# File 'lib/mongoid/matcher/field_operator.rb', linha 54

module_function def apply_array_field_operator(existe, valor, Condição)
  se Array === valor
    valor.algum? { |v| rendimento v }
  mais
    rendimento valor
  end
end

.apply_comparison_operator(operador, esquerda, direita) ➤ Objeto

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

TODO:

Refatore isto, pois ele é relevante apenas para $lt, $lte, $gt, $gte.

Usado para avaliar operadores de comparação $lt, $lte, $gt, $gte.



67
68
69
70
71
72
73
74
75
# File 'lib/mongoid/matcher/field_operator.rb', linha 67

module_function def apply_comparison_operator(operador, operador, esquerda, direita)
  esquerda.enviar(operador, operador, direita)
salvar ArgumentError, NoMethodError, TypeError
  # abafamos tentativas de comparação falsas, por exemplo número em string
  # comparações.
  # Várias exceções diferentes podem ser produzidas dependendo dos tipos
  # envolvido.
  false
end

.get(op) ⇒ Module

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Retorna o módulo matcher para um determinado operador.

Parâmetros:

  • op (string)

    O nome do operador.

Retorna:

  • (Módulo)

    O módulo matcher.



43
44
45
46
47
# File 'lib/mongoid/matcher/field_operator.rb', linha 43

module_function def obter(op)
  Map.buscar(op)
salvar KeyError
  aumentar Errors::Operador de campo inválido.Novo(op)
end