Class: Groonga::ExpressionBuildable::SetExpressionBuilder

Inherits:
ExpressionBuilder show all
Defined in:
lib/groonga/expression-builder.rb

Direct Known Subclasses

AndExpressionBuilder, OrExpressionBuilder

Instance Method Summary collapse

Methods inherited from ExpressionBuilder

#&, #|

Constructor Details

#initialize(operation, *expression_builders) ⇒ SetExpressionBuilder

Returns a new instance of SetExpressionBuilder.



118
119
120
121
122
# File 'lib/groonga/expression-builder.rb', line 118

def initialize(operation, *expression_builders)
  super()
  @operation = operation
  @expression_builders = expression_builders
end

Instance Method Details

#build(expression, variable) ⇒ Object



124
125
126
127
128
129
130
# File 'lib/groonga/expression-builder.rb', line 124

def build(expression, variable)
  return if @expression_builders.empty?
  @expression_builders.each do |builder|
    builder.build(expression, variable)
  end
  expression.append_operation(@operation, @expression_builders.size)
end