Parent

Included Modules

Files

Class/Module Index [+]

Quicksearch

Tarantool::BaseRecord::Select

Attributes

params[R]
record[R]

Public Class Methods

new(record, params={}) click to toggle source
# File lib/tarantool/record/select.rb, line 7
def initialize(record, params={})
  @record = record
  @params = params
end

Public Instance Methods

all() click to toggle source
# File lib/tarantool/record/select.rb, line 63
def all
  results.dup
end
auto_shard() click to toggle source
# File lib/tarantool/record/select.rb, line 57
def auto_shard
  params = @params.dup
  params.delte :shard
  self.class.new(@record, params)
end
call(*args) click to toggle source
# File lib/tarantool/record/select.rb, line 37
def call(*args)
  @record.call(*args)
end
each() click to toggle source
# File lib/tarantool/record/select.rb, line 32
def each
  return to_enum  unless block_given?
  results.each{|a| yield a}
end
first() click to toggle source
# File lib/tarantool/record/select.rb, line 67
def first
  space.select(@params[:where], @params[:offset] || 0, 1).first
end
limit(limit) click to toggle source
# File lib/tarantool/record/select.rb, line 41
def limit(limit)
  self.class.new(@record, @params.merge(limit: limit))
end
offset(offset) click to toggle source
# File lib/tarantool/record/select.rb, line 45
def offset(offset)
  self.class.new(@record, @params.merge(offset: offset))
end
reset!() click to toggle source
# File lib/tarantool/record/select.rb, line 27
def reset!
  @results = nil
  self
end
results() click to toggle source
# File lib/tarantool/record/select.rb, line 16
def results
  @results ||= begin
      raise "Condition is not set"  unless @params[:where]
      @record.auto_space.select(
        @params[:where],
        @params[:offset] || 0,
        @params[:limit] || -1
      )
    end
end
shard(params) click to toggle source
# File lib/tarantool/record/select.rb, line 53
def shard(params)
  self.class.new(@record, @params.merge(shard: params))
end
space() click to toggle source
# File lib/tarantool/record/select.rb, line 71
def space
  space = @record.auto_space
  @params[:shard] ? space.shard(@params[:shard]) : space
end
space_no() click to toggle source
# File lib/tarantool/record/select.rb, line 12
def space_no
  @record.space_no
end
where(params) click to toggle source
# File lib/tarantool/record/select.rb, line 49
def where(params)
  self.class.new(@record, @params.merge(where: params))
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.