Class: Module

Inherits:
Object show all
Defined in:
lib/hash-utils/module.rb

Overview

Module extension.

Instance Method Summary collapse

Instance Method Details

#get_module(name) ⇒ Module

Returns submodule or subclass recursively. It’s approximately 3x faster than Kernel#eval.

Examples:

Kernel.get_module("Zlib::Inflate")

Parameters:

  • class or module name

Returns:

  • required module

Since:

  • 0.13.0



22
23
24
25
26
27
28
29
30
31
32
# File 'lib/hash-utils/module.rb', line 22

def get_module(name)
    names = name.split("::")
    mod = self
    
    while not names.empty?
        name = names.shift
        mod = mod.const_get(name)
    end
    
    return mod
end