Module: ContextExposer::Integrations::WithDecoratesBefore::ClassMethods

Defined in:
lib/context_exposer/integrations/with_decorates_before.rb

Instance Method Summary collapse

Instance Method Details

#context_expose_decorated_instance_vars(options = {}) ⇒ Object Also known as: expose_decorated_instance_vars

expose all exposures exposed by decent_exposure to context



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/context_exposer/integrations/with_decorates_before.rb', line 7

def context_expose_decorated_instance_vars options = {}
  coll_decorates  = __decorates_collection__[0..-1]
  basic_decorates = __decorates__[0..-1]

  all_decorates  = case options[:for]
  when :collection
    coll_decorates
  when :non_collection
    basic_decorates
  else
    coll_decorates + basic_decorates
  end
  
  expose_keys     = all_decorates.map {|v| v[1..-1]}

  _exposure_filter(keys, options).each do |exposure|
    exposed exposure do
      send("@#{exposure}")
    end
  end
end