Módulo: Mongoid::Matcher::ElemMatch Privado
- Definido em:
- lib/mongoid/matcher/elem_match.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.
Correspondente na memória para a expressão$elemMatch .
Recolhimento do Resumo do método de classe
-
.correspondências?(existe, valor, condição) ➤ verdadeiro | falso, booleano
privado
Retorna se um valor satisfaz uma expressão$elemMatch .
Detalhes do método de classe
.correspondências?(existe, valor, condição) ➤ verdadeiro | false, booleano
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 se um valor satisfaz uma expressão$elemMatch .
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/mongoid/matcher/elem_match.rb', linha 21 module_function def correspondências?(existe, valor, Condição) a menos que Hash === Condição aumentar Errors::Query inválida, "$elemMatch requer um operando de Hash: #{Erros::InvalidQuery.truncate_expr(condição)}" end se Array === valor && !valor.vazio? valor.algum? fazer |v| ElemMatchExpression.correspondências?(v, Condição) end mais # Validar que a condição é válida, embora nunca tentemos # correspondendo a ele. Condição.cada fazer |k, v| k = k.to_s se k.start_with?('$') começar ExpressionOperator.obter(k) salvar Mongoid::Errors::InvalidExpressionOperator começar FieldOperator.obter(k) salvar Mongoid::Errors::Operador de campo inválido => exc aumentar Mongoid::Errors::InvalidElemMatchOperator.Novo(exc.operador, operador) end end end end false end end |