R
Rick DeNatale
...
Thanks for the detailed explanation.
Could this be a typo where you intended to say 'super' pointers?
I think I should have said klass or superclass pointers.From my findings:
* the ancestors and the class method always hide it (as you write above)
* the 'superclass' method _does_ return the first singleton classes
pointed to by 'super'
<code>
$ irb
ruby-1.9.2-head > class A < Object; end
=A0=3D> nil
ruby-1.9.2-head > A.singleton_class
=A0=3D> #<Class:A>
ruby-1.9.2-head > A.singleton_class.superclass
=A0=3D> #<Class:Object>
</code>
That's a diference between Ruby 1.9 and 1.8 in 1.8.7
class B < A
end
B.superclass # =3D> A
b_sing =3D class << B; self; end
b_sing.superclass # =3D> #<Class:Class>
--=20
Rick DeNatale
Blog: http://talklikeaduck.denhaven2.com/
Github: http://github.com/rubyredrick
Twitter: @RickDeNatale
WWR: http://www.workingwithrails.com/person/9021-rick-denatale
LinkedIn: http://www.linkedin.com/in/rickdenatale