Module: Reloadable

Defined in:
lib/monetra/active_support/reloadable.rb

Overview

Classes that include this module will automatically be reloaded by the Rails dispatcher when Dependencies.mechanism = :load.

Defined Under Namespace

Modules: Subclasses

Class Method Summary collapse

Class Method Details

.included(base) ⇒ Object

nodoc:

Raises:

  • (TypeError)


5
6
7
8
9
10
11
12
13
# File 'lib/monetra/active_support/reloadable.rb', line 5

def included(base) #nodoc:
  raise TypeError, "Only Classes can be Reloadable!" unless base.is_a? Class
  
  unless base.respond_to?(:reloadable?)
    class << base
      define_method(:reloadable?) { true }
    end
  end
end

.reloadable_classesObject



15
16
17
# File 'lib/monetra/active_support/reloadable.rb', line 15

def reloadable_classes
  included_in_classes.select { |klass| klass.reloadable? }
end