Mam instancję o
klasy O
. Chciałbym wiedzieć, do czego zdolny jest o
.Lista metod instancji aktualnej klasy tylko
o.methods
da mi wiele metod. Więc zwykle robię o.methods - Object.instance_methods
. Ale to nie jest zwięzłe.
Chcę zrobić coś takiego, jak o.methods - o.class.superclass.instance_methods
. To znaczy, same metody zdefiniowane w O
.
Czy jest jakiś inny sposób?
Czy 'o.methods (false)' praca? –
@SergioTulentsev Nie, to by nie działało, ponieważ znaczenie "fałszywego" argumentu dla "metod" polega na wyliczaniu tylko pojedynczych metod, np. '' foo'.methods (false) # => [] '. – toro2k