Module: ActionView::LookupContext::DetailsCache

Included in:
ActionView::LookupContext
Defined in:
actionview/lib/action_view/lookup_context.rb

Overview

Add caching behavior on top of Details.

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#cacheObject

Returns the value of attribute cache



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

def cache
  @cache
end

Instance Method Details

#details_keyObject

Calculate the details key. Remove the handlers from calculation to improve performance since the user cannot modify it explicitly.



92
93
94
# File 'actionview/lib/action_view/lookup_context.rb', line 92

def details_key #:nodoc:
  @details_key ||= DetailsKey.get(@details) if @cache
end

#disable_cacheObject

Temporary skip passing the details_key forward.



97
98
99
100
101
102
# File 'actionview/lib/action_view/lookup_context.rb', line 97

def disable_cache
  old_value, @cache = @cache, false
  yield
ensure
  @cache = old_value
end