Class: ChewyQuery::Builder::Nodes::Missing

Inherits:
Expr
  • Object
show all
Defined in:
lib/chewy_query/builder/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/builder/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/builder/nodes/missing.rb', line 10

def !
  Nodes::Exists.new(@name)
end

#__render__Object



14
15
16
# File 'lib/chewy_query/builder/nodes/missing.rb', line 14

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