# File lib/active_support/dependencies.rb, line 521 def initialize @store = ThreadSafe::Cache.new end
# File lib/active_support/dependencies.rb, line 551 def clear! @store.clear end
# File lib/active_support/dependencies.rb, line 525 def empty? @store.empty? end
# File lib/active_support/dependencies.rb, line 533 def get(key) key = key.name if key.respond_to?(:name) @store[key] ||= Inflector.constantize(key) end
# File lib/active_support/dependencies.rb, line 529 def key?(key) @store.key?(key) end
# File lib/active_support/dependencies.rb, line 539 def safe_get(key) key = key.name if key.respond_to?(:name) @store[key] ||= Inflector.safe_constantize(key) end
# File lib/active_support/dependencies.rb, line 544 def store(klass) return self unless klass.respond_to?(:name) raise(ArgumentError, 'anonymous classes cannot be cached') if klass.name.empty? @store[klass.name] = klass self end