Module: CemAcpt::CoreExtensions::DeepFreeze::OpenStruct
- Defined in:
- lib/cem_acpt/core_extensions.rb
Overview
Holds deep_freeze extensions to OpenStruct
Instance Method Summary collapse
Instance Method Details
#deep_freeze ⇒ Object
47 48 49 50 51 52 53 54 55 56 |
# File 'lib/cem_acpt/core_extensions.rb', line 47 def deep_freeze return if deep_frozen? @table.reduce({}) do |h, (key, value)| fkey = key.respond_to?(:deep_freeze) ? key.deep_freeze : key fval = value.respond_to?(:deep_freeze) ? value.deep_freeze : value h.merge(fkey => fval) end.freeze @deep_frozen = true end |
#deep_frozen? ⇒ Boolean
58 59 60 |
# File 'lib/cem_acpt/core_extensions.rb', line 58 def deep_frozen? !!@deep_frozen end |