class Groonga::Client::Request::Select::ScriptSyntaxExpressionParameter

@private

Public Class Methods

new(name, expression, values) click to toggle source
# File lib/groonga/client/request/select.rb, line 801
def initialize(name, expression, values)
  @name = name
  @expression = expression
  @values = values
end

Public Instance Methods

to_parameters() click to toggle source
# File lib/groonga/client/request/select.rb, line 807
def to_parameters
  case @expression
  when String
    return {} if /\A\s*\z/ === @expression
    expression = @expression
  when NilClass
    return {}
  else
    expression = @expression
  end

  case @values
  when ::Hash
    escaped_values = {}
    @values.each do |key, value|
      escaped_values[key] = escape_script_syntax_value(value)
    end
    expression = expression % escaped_values
  when ::Array
    escaped_values = @values.collect do |value|
      escape_script_syntax_value(value)
    end
    expression = expression % escaped_values
  end

  {
    @name => expression,
  }
end