Class: GroongaQueryLog::FilterRewriter

Inherits:
Object
  • Object
show all
Defined in:
lib/groonga-query-log/filter-rewriter.rb

Instance Method Summary collapse

Constructor Details

#initialize(filter, options = {}) ⇒ FilterRewriter

Returns a new instance of FilterRewriter.



20
21
22
23
24
25
26
# File 'lib/groonga-query-log/filter-rewriter.rb', line 20

def initialize(filter, options={})
  @filter = filter
  @options = options
  @vector_accessors = @options[:vector_accessors] || []
  @nullable_reference_number_accessors =
    @options[:nullable_reference_number_accessors] || []
end

Instance Method Details

#rewriteObject



28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/groonga-query-log/filter-rewriter.rb', line 28

def rewrite
  rewritten = @filter
  if @options[:rewrite_vector_equal]
    rewritten = rewrite_vector_equal(rewritten)
  end
  if @options[:rewrite_vector_not_equal_empty_string]
    rewritten = rewrite_vector_not_equal_empty_string(rewritten)
  end
  if @options[:rewrite_nullable_reference_number]
    rewritten = rewrite_nullable_reference_number(rewritten)
  end
  if @options[:rewrite_not_or_regular_expression]
    rewritten = rewrite_not_or_regular_expression(rewritten)
  end
  if @options[:rewrite_and_not_operator]
    rewritten = rewrite_and_not_operator(rewritten)
  end
  rewritten
end