aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support
diff options
context:
space:
mode:
authorNicholas Seckar <nseckar@gmail.com>2006-02-02 16:56:15 +0000
committerNicholas Seckar <nseckar@gmail.com>2006-02-02 16:56:15 +0000
commit6d7b0374d12de2ddeaa9c3f896234111ed6bf8e2 (patch)
tree7681d9fb082901cfb1ee50a8bda3b6855b500675 /activesupport/lib/active_support
parent1129e5b915fe007257447c61ca77843fb06b4c56 (diff)
downloadrails-6d7b0374d12de2ddeaa9c3f896234111ed6bf8e2.tar.gz
rails-6d7b0374d12de2ddeaa9c3f896234111ed6bf8e2.tar.bz2
rails-6d7b0374d12de2ddeaa9c3f896234111ed6bf8e2.zip
Add LoadingModule.clear! back temporarily
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3524 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activesupport/lib/active_support')
-rw-r--r--activesupport/lib/active_support/dependencies.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/activesupport/lib/active_support/dependencies.rb b/activesupport/lib/active_support/dependencies.rb
index 7f73f9bf40..0bedbf093c 100644
--- a/activesupport/lib/active_support/dependencies.rb
+++ b/activesupport/lib/active_support/dependencies.rb
@@ -142,6 +142,14 @@ module Dependencies #:nodoc:
def const_available?(name)
self.const_defined?(name) || load_paths.any? {|lp| lp.filesystem_path(path + [name])}
end
+
+ # Erase all items in this module
+ def clear!
+ constants.each do |name|
+ Object.send(:remove_const, name) if Object.const_defined?(name) && Object.const_get(name).object_id == self.const_get(name).object_id
+ self.send(:remove_const, name)
+ end
+ end
end
class RootLoadingModule < LoadingModule #:nodoc: