module
- 1_8_6_287
- 1_8_7_72
- 1_8_7_330
- 1_9_1_378
- 1_9_2_180
- 1_9_3_125
- 1_9_3_392
- 2_1_10 (0)
- 2_2_9 (0)
- 2_4_6 (0)
- 2_5_5 (0)
- 2_6_3 (0)
- What's this?
module()
public
Attempts to locate the included module object. Returns the name if not known.
The scoping rules of Ruby to resolve the name of an included module are:
-
first look into the children of the current context;
-
if not found, look into the children of included modules, in reverse inclusion order;
-
if still not found, go up the hierarchy of names.
This method has O(n!) behavior when the module calling include is referencing nonexistent modules. Avoid calling #module until after all the files are parsed. This behavior is due to ruby’s constant lookup behavior.
As of the beginning of October, 2011, no gem includes nonexistent modules.