Class: ArXiv::Query

Inherits:
Object
  • Object
show all
Includes:
QueryOperator
Defined in:
lib/ar_xiv/request.rb

Overview

AND OR ANDOR を意識しないquery

Instance Method Summary collapse

Methods included from QueryOperator

#and, #andnot, #or

Constructor Details

#initialize(key, value = nil) ⇒ Query

@queryは [str,str,str]



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/ar_xiv/request.rb', line 23

def initialize(key, value=nil)
  if value==nil
    case key
    when String
      @key = "all"
      @value = [key]
    when Array
      @key = "all"
      @value = key
    when Hash
      raise if key.keys.length != 1 # TODO: 1以外に対応
      @key = key.keys.first
      @value = (key[@key].is_a? Array) ? key[@key] : [key[@key]]
    end
  else
    @key = key
    @value = (key.is_a? Array) ? value : [value]
  end
end

Instance Method Details

#to_query_stringObject



43
44
45
# File 'lib/ar_xiv/request.rb', line 43

def to_query_string
  "#{@key}:%28%22#{@value.join("%22+AND+%22")}%22%29"
end