Exception: Mongoid::Errors::InvalidElemMatchOperator

Inherits:
InvalidQuery show all
Defined in:
lib/mongoid/errors/invalid_elem_match_operator.rb

Overview

Raised when invalid field-level operator is passed to the $elemMatch embedded matcher.

Constant Summary collapse

VALID_OPERATORS =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

%w(
  and all eq exists gt gte in lt lte ne nin nor not or regex size
).freeze

Constants inherited from MongoidError

MongoidError::BASE_KEY

Instance Attribute Summary collapse

Attributes inherited from MongoidError

#problem, #resolution, #summary

Instance Method Summary collapse

Methods inherited from InvalidQuery

truncate_expr

Methods inherited from MongoidError

#compose_message

Constructor Details

#initialize(operator) ⇒ InvalidElemMatchOperator

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Creates the exception.



21
22
23
24
25
26
27
# File 'lib/mongoid/errors/invalid_elem_match_operator.rb', line 21

def initialize(operator)
  @operator = operator
  super(compose_message("invalid_elem_match_operator",
    operator: operator,
    valid_operators: VALID_OPERATORS.map { |op| "'$#{op}'" }.join(', '),
  ))
end

Instance Attribute Details

#operatorString (readonly)



30
31
32
# File 'lib/mongoid/errors/invalid_elem_match_operator.rb', line 30

def operator
  @operator
end