123456789_123456789_123456789_123456789_123456789_

Class: ActionView::LookupContext::DetailsKey

Do not use. This class is for internal use only.
Relationships & Source Files
Inherits: Object
Defined in: actionview/lib/action_view/lookup_context.rb

Class Method Summary

Instance Method Summary

Class Method Details

.clear

[ GitHub ]

  
# File 'actionview/lib/action_view/lookup_context.rb', line 77

def self.clear
  ActionView::PathRegistry.all_resolvers.each do |resolver|
    resolver.clear_cache
  end
  @view_context_class = nil
  @details_keys.clear
  @digest_cache.clear
end

.details_cache_key(details)

[ GitHub ]

  
# File 'actionview/lib/action_view/lookup_context.rb', line 65

def self.details_cache_key(details)
  @details_keys.fetch(details) do
    if formats = details[:formats]
      unless Template::Types.valid_symbols?(formats)
        details = details.dup
        details[:formats] &= Template::Types.symbols
      end
    end
    @details_keys[details] ||= TemplateDetails::Requested.new(**details)
  end
end

.digest_cache(details)

[ GitHub ]

  
# File 'actionview/lib/action_view/lookup_context.rb', line 61

def self.digest_cache(details)
  @digest_cache[details_cache_key(details)] ||= Concurrent::Map.new
end

.digest_caches

[ GitHub ]

  
# File 'actionview/lib/action_view/lookup_context.rb', line 86

def self.digest_caches
  @digest_cache.values
end

.view_context_class

[ GitHub ]

  
# File 'actionview/lib/action_view/lookup_context.rb', line 90

def self.view_context_class
  @view_context_mutex.synchronize do
    @view_context_class ||= ActionView::Base.with_empty_template_cache
  end
end

Instance Method Details

#eql?

[ GitHub ]

  
# File 'actionview/lib/action_view/lookup_context.rb', line 55

alias :eql? :equal?