Class: JapaneseNames::Util::Kernel

Inherits:
Object
  • Object
show all
Defined in:
lib/japanese_names/util/kernel.rb

Overview

Provides extensions to Ruby kernel.

Class Method Summary collapse

Class Method Details

.deep_freeze(object) ⇒ Object

Recursively freezes an object



9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/japanese_names/util/kernel.rb', line 9

def deep_freeze(object)
  case object
  when Hash
    object.each_value { |v| deep_freeze(v) }
    object.freeze
  when Array
    object.each { |j| deep_freeze(j) }
    object.freeze
  when String
    object.freeze
  end
end