RubyGems Navigation menu

retroactive_module_inclusion 1.0.0

This gem circumvents the "dynamic module include" (aka "double inclusion") problem, which is the fact that M.module_eval { include N } does not make the methods of module N available to modules and classes which had included module M beforehand, only to the ones that include it thereafter. This behaviour hurts the least surprise principle, specially because if K is a class, then K.class_eval { include M } _does_ make all methods of M available to all classes which had previously inherited it. This inconsistency stems from implementation efficienty concerns and characterize a limitation in Ruby's object model (see {Dynamic Module Include Problem}[http://eigenclass.org/hiki/The+double+inclusion+problem]).

Gemfile:
=

instalar:
=

Versões:

  1. 1.2.5 January 26, 2011 (11 KB)
  2. 1.2.4 January 24, 2011 (11 KB)
  3. 1.2.3 January 24, 2011 (11 KB)
  4. 1.2.2 January 24, 2011 (11 KB)
  5. 1.2.1 January 24, 2011 (11 KB)
  6. 1.0.0 January 20, 2011 (10 KB)
Mostrar todas as versões (11)

Development Dependencies (1):

hoe >= 2.8.0

Donos:

Autores:

  • Adriano Mitre

SHA 256 checksum:

=

Total de downloads 37.539

Desta versão 3.325

Versão lançada:

Licenças:

N/A

Versão Requerida do Ruby: Nenhum

Links: