module Spectre::Delegator
Core Modules
Public Class Methods
delegate(*methods, target)
click to toggle source
Calls superclass method
# File lib/spectre.rb, line 347 def self.delegate(*methods, target) methods.each do |method_name| define_method(method_name) do |*args, &block| return super(*args, &block) if respond_to? method_name target.send(method_name, *args, &block) end @@mappings[method_name] = target private method_name end end
redirect(method_name, *args, **kwargs, &block)
click to toggle source
# File lib/spectre.rb, line 360 def self.redirect method_name, *args, **kwargs, &block target = @@mappings[method_name] raise "No method or variable '#{method_name}' defined" if !target target.send(method_name, *args, **kwargs, &block) end