Módulo: Mongoid::Matcher::Nor Private

Definido en:
lib/mongoid/matcher/nor.rb

Overview

Este módulo forma parte de una API privada. Debe evitar su uso siempre que sea posible, ya que podría eliminarse o modificarse en el futuro.

Comparador en memoria para la expresión $nor.

Colapso delresumen del método de clase

Detalles del método de clase

.¿coincide?(documento, expr) ⇒ verdadero | falso, booleano

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve si un documento satisface una expresión $nor.

Parámetros:

  • Documento (Mongoid::Documento)

    El documento.

  • expr (Matriz<Hash>)

    Las condiciones $nor.

Devuelve:

  • (verdadero | falso)

    Si el documento coincide.

  • (Booleano)


20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# Archivo 'lib/mongoid/matcher/nor.rb', línea 20

module_function def ¿partidos?(Documento, expr)
  a no ser que expr.is_a?(Arreglo)
    propagar Errors::Consulta no válida, "El argumento $nor debe ser una matriz: #{Errors::InvalidQuery.truncate_expr(expr)}"
  end

  Si expr.¿vacío?
    propagar Errors::Consulta no válida, "El argumento $nor debe ser una matriz no vacía: #{Errors::InvalidQuery.truncate_expr(expr)}"
  end

  expr.cada hacer |sub_expr|
    Si expresión.¿partidos?(Documento, sub_expr)
      return false
    end
  end

  expr.any?
end