class RG::Proxy
Attributes
objs[R]
Public Class Methods
new(mode, objs)
click to toggle source
# File lib/rubygoods/proxy.rb, line 5 def initialize(mode, objs) case mode when :single p_init_single(objs) when :multiple p_init_multiple(objs) else fail ArgumentError, "Invalid mode" end end
Public Instance Methods
method_missing(m, *args, &block)
click to toggle source
# File lib/rubygoods/proxy.rb, line 29 def method_missing(m, *args, &block) results = [] @objs.each do |o| results << o.send(m, *args, &block) end results end
p_eval(dat)
click to toggle source
# File lib/rubygoods/proxy.rb, line 37 def p_eval(dat) results = [] @objs.each do |o| results << o.instance_eval(dat) end results end
p_init_multiple(objs)
click to toggle source
# File lib/rubygoods/proxy.rb, line 20 def p_init_multiple(objs) init_single(objs) if objs.class != Array @objs = objs cl = @objs[0].class @objs.each do |o| fail(ArgumentError, "Objects' Classes are not same!") if (o.class != cl) end end
p_init_single(obj)
click to toggle source
# File lib/rubygoods/proxy.rb, line 16 def p_init_single(obj) @objs = [obj] end
p_inspect()
click to toggle source
# File lib/rubygoods/proxy.rb, line 45 def p_inspect() results = [] @objs.each do |o| results << o.inspect end results end