Quindi ho capito che non si suppone di creare direttamente sottoclasse Fixnum, Float o Integer, in quanto non hanno un metodo #nuovo. Usare DelegateClass sembra funzionare, ma è il modo migliore? Qualcuno sa qual è il motivo dietro a queste classi che non ha #nuovo?Fixnum sottoclasse in rubino
ho bisogno di una classe che si comporta come un Fixnum, ma ha alcuni metodi in più, e mi piacerebbe essere in grado di fare riferimento al suo valore attraverso self
dall'interno della classe, ad esempio:
class Foo < Fixnum
def initialize value
super value
end
def increment
self + 1
end
end
Foo.new(5).increment + 4 # => 10
Dicci cosa stai veramente cercando di fare (l'obiettivo finale), e cercheremo di dirti il modo migliore per farlo. Non penso che la sottoclasse sia appropriata qui. –
ha aggiornato la domanda. – cloudhead