Class: Chewy::Query::Nodes::Missing

Inherits:
Expr show all
Defined in:
lib/chewy/query/nodes/missing.rb

Instance Method Summary collapse

Methods inherited from Expr

#&, #|, #~

Methods inherited from Base

#eql?, #render

Constructor Details

#initialize(name, options = {}) ⇒ Missing

Returns a new instance of Missing.



5
6
7
8
# File 'lib/chewy/query/nodes/missing.rb', line 5

def initialize(name, options = {})
  @name = name.to_s
  @options = options.reverse_merge(existence: true, null_value: false)
end

Instance Method Details

#!Object



10
11
12
# File 'lib/chewy/query/nodes/missing.rb', line 10

def !
  Nodes::Exists.new @name
end

#__render__Object



14
15
16
# File 'lib/chewy/query/nodes/missing.rb', line 14

def __render__
  {missing: {field: @name}.merge(@options.slice(:existence, :null_value))}
end