Class: Groonga::ExpressionBuildable::BinaryExpressionBuilder

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

Overview

:nodoc:

Instance Method Summary collapse

Methods inherited from ExpressionBuilder

#&, #|

Constructor Details

#initialize(operation, column, value) ⇒ BinaryExpressionBuilder

Returns a new instance of BinaryExpressionBuilder.



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

def initialize(operation, column, value)
  super()
  @operation = operation
  @default_column = column
  @value = value
end

Instance Method Details

#build(expression, variable) ⇒ Object



133
134
135
136
137
138
139
140
141
142
143
# File 'lib/groonga/expression-builder.rb', line 133

def build(expression, variable)
  expression.append_object(variable)
  if @default_column.is_a?(String)
    expression.append_constant(@default_column)
  else
    expression.append_object(@default_column)
  end
  expression.append_operation(Groonga::Operation::GET_VALUE, 2)
  expression.append_constant(@value)
  expression.append_operation(@operation, 2)
end