class ReloaderInterceptor::Wrapper
Public Class Methods
initialize(*options)
click to toggle source
# File lib/reloader_interceptor/wrapper.rb, line 69 def initialize(*options) @options = options end
wrap(klass)
click to toggle source
@param [Class] klass An original class. @return [Class] A wrapping class. Return the original one if
`ReloaderInterceptor` is disabled.
# File lib/reloader_interceptor/wrapper.rb, line 54 def wrap(klass) return klass unless ReloaderInterceptor.enabled? klass_name = klass.name Class.new(klass.superclass) do extend Wrapper::DSL # Define `.name` and `.inspect` to mimic the original class. self.define_singleton_method :name do klass_name end self.define_singleton_method :inspect do klass_name end def initialize(*options) @options = options end define_instance_methods_using_class_name(self, klass) define_singleton_methods_using_class_name(self, klass) end end