Sto provando ad accedere a una costante contenuta in varie classi in un modulo che sto includendo in esse. Come un esempio di baseRuby: Come accedere a una costante dalla classe un modulo è incluso in
module foo
def do_something_to_const
CONSTANT.each { ... do_something ... }
end
end
class bar
include foo
CONSTANT = %w(I want to be able to access this in foo)
end
class baz
include foo
CONSTANT = %w(A different constant to access)
end
quanto la logica per il modulo viene condiviso tra più classi mi piacerebbe essere in grado di fare riferimento solo alla costante (il cui nome rimane lo stesso in ogni classe, ma il contenuto variare). Come potrei andare in giro facendo questo?
Grazie a @Vasfed è esattamente quello che stavamo cercando –
Non è necessario utilizzare il riflesso. Puoi anche usare 'self.class :: CONST' senza riflettere. –
@ JörgWMittag hai ragione, ed è circa il 2-9% più veloce, risposta aggiornata – Vasfed