puts A.new.eigenclass.superclass #eigenclass A. , , eigenclass, , .
:
EigenClass - , , .
, obj = Foo.new :
obj --eigenclass β # > - () β A
:
obj - () β A
self #eigenclass.
, Ruby, - . , #eigenclass eigenclass A ( sigleton).
A - (eigenclass) β # - () β #
, # A, , Ruby , eigenclasses . :
A.superclass #=> Object
A.eigenclass #=> #<Class: A>
A.eigenclass.superclass #=> #<Class: Object> => Eigenclass of Object
A.eigenclass.superclass == Object.eigenclass #=> true
eigenclass .
, : Class.new.eigenclass.superclass, . Class.new , B, eigenclass.superclass . B Object, B B.
. , ; . ( Pragmatic MR):
.
, , D C. , D.eigenclass.superclass eigneclass ( D) [ C]. C - Object.. , , .