class Prolly::Ps::Storage::Rubylist
Public Class Methods
new()
click to toggle source
Calls superclass method
Prolly::Ps::Storage::Base::new
# File lib/prolly/ps/storage/rubylist.rb, line 9 def initialize super end
Public Instance Methods
add(datum)
click to toggle source
# File lib/prolly/ps/storage/rubylist.rb, line 19 def add(datum) @data << datum end
count(rvs, options = {})
click to toggle source
# File lib/prolly/ps/storage/rubylist.rb, line 23 def count(rvs, options = {}) reload = options[:reload] || false if rvs.kind_of?(Array) value = @data.count { |e| rvs.all? { |rv| e.has_key?(rv) } } elsif rvs.kind_of?(Hash) value = @data.count { |e| rvs.map { |rkey, rval| vals = rval.kind_of?(Array) ? rval : [rval] vals.include?(e[rkey]) }.all? } end return value end
rand_vars()
click to toggle source
# File lib/prolly/ps/storage/rubylist.rb, line 38 def rand_vars @data.first.keys end
reset()
click to toggle source
Calls superclass method
Prolly::Ps::Storage::Base#reset
# File lib/prolly/ps/storage/rubylist.rb, line 13 def reset super @data = [] @uniq_vals = {} end
uniq_vals(name)
click to toggle source
# File lib/prolly/ps/storage/rubylist.rb, line 42 def uniq_vals(name) @uniq_vals[name] ||= @data.map { |li| li.has_key?(name) ? li[name] : nil }.uniq end
Private Instance Methods
display_stats()
click to toggle source
# File lib/prolly/ps/storage/rubylist.rb, line 54 def display_stats require 'pp' puts "------------- Stats! --------------------" puts pp @stash_time.sort { |a, b| b[1][:usage] <=> a[1][:usage] }[0..10] puts pp @stash_time.sort { |a, b| b[1][:elapsed] <=> a[1][:elapsed] }[0..10] puts puts @stash_stats.inspect puts end
explain(rvs, options = {})
click to toggle source
# File lib/prolly/ps/storage/rubylist.rb, line 48 def explain(rvs, options = {}) end
stats(options = {})
click to toggle source
# File lib/prolly/ps/storage/rubylist.rb, line 51 def stats(options = {}) end