Class: Module

Inherits:
Object show all
Defined in:
lib/italian/ruby/alias/module.rb,
lib/italian/ruby/metodi/module.rb

Instance Method Summary collapse

Instance Method Details

#rimanda(costante, archivio) ⇒ Object

Rimanda la costante alla definizione in archivio. La prima volta che viene incontrata la definizione della costante nel codice, allora l’archivio verrà richiesto.



9
10
11
12
13
14
15
16
17
# File 'lib/italian/ruby/metodi/module.rb', line 9

def rimanda(costante, archivio)
  archivi_in_memoria = $:.map do |cartella|
    Dir["#{cartella}/**/#{archivio}.ir"]
  end
  archivio_da_tradurre    = archivi_in_memoria.flatten.compact.first
  archivio_da_richiedere  = Italian::Ruby.percorso_archivio_tradotto archivio_da_tradurre
  traduci archivio_da_tradurre
  self.autoload costante, archivio_da_richiedere
end

#rimanda_relativo(costante, percorso_archivio) ⇒ Object

Come il rimanda, ma usando un percorso relativo.



21
22
23
24
25
26
27
# File 'lib/italian/ruby/metodi/module.rb', line 21

def rimanda_relativo(costante, percorso_archivio)
  sorgente_chiamante, linea_chiamante = ottieni_sorgente_e_linea_chiamante caller_locations
  archivio_da_tradurre    = archivio_relativo sorgente_chiamante, percorso_archivio
  archivio_da_richiedere  = Italian::Ruby.percorso_archivio_tradotto archivio_da_tradurre
  traduci archivio_da_tradurre
  self.autoload costante, archivio_da_richiedere
end