module Kernel

Public Instance Methods

subper_inheritable() click to toggle source
# File lib/subper_class.rb, line 4
def subper_inheritable
  self.instance_methods.each do |inst_method|
    self.class_eval do |klass|
      define_method "subper_#{inst_method}".to_sym do |*arg|
        org_return = self.send inst_method, *arg
        if org_return.instance_of?(klass.superclass)
          return klass.new(org_return)
        else
          org_return
        end
      end
    end
  end
end