/[guile]/guile/guile-core/doc/goops/goops.texi
ViewVC logotype

Diff of /guile/guile-core/doc/goops/goops.texi

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2.2.6 by mdj, Thu Apr 17 18:47:07 2003 UTC revision 1.2.2.7 by mdj, Thu Apr 17 19:33:00 2003 UTC
# Line 2664  The default @code{class-redefinition} me Line 2664  The default @code{class-redefinition} me
2664  with the default metaclass @code{<class>}, has the following internal  with the default metaclass @code{<class>}, has the following internal
2665  protocol.  protocol.
2666    
 [ *fixme*  I'm not sure that I understand this sufficiently to explain  
 it.  Also, the internals of the default class redefinition method are  
 extremely implementation-specific, and I'm not sure that there is that  
 much point trying to describe the internal protocol such that it could  
 be customized without going to look at the source code. ]  
   
2667  @code{class-redefinition @var{(old <class>)} @var{(new <class>)}}  @code{class-redefinition @var{(old <class>)} @var{(new <class>)}}
2668  (method)  (method)
2669    
# Line 2685  be customized without going to look at t Line 2679  be customized without going to look at t
2679  @end itemize  @end itemize
2680    
2681  The default @code{update-direct-subclass!} method invokes  The default @code{update-direct-subclass!} method invokes
2682  @code{class-redefinition} recursively to handle the redefinition of the  @code{class-redefinition} recursively to handle the redefinition of
2683  subclass.  subclasses.
2684    
2685  When a class is redefined, any existing instance of the redefined class  When a class is redefined, any existing instance of the redefined class
2686  will be modified for the new class definition before the next time that  will be modified for the new class definition before the next time that
2687  any of the instance's slot is referenced or set.  GOOPS modifies each  any of the instance's slot is referenced or set.  GOOPS modifies each
2688  instance by calling the generic function @code{change-class}.  [ *fixme*  instance by calling the generic function @code{change-class}.
 Actually it sometimes calls @code{change-class} and sometimes  
 @code{change-object-class}, and I don't understand why. ]  
2689    
2690  The default @code{change-class} method copies slot values from the old  The default @code{change-class} method copies slot values from the old
2691  to the modified instance, and initializes new slots, as described in  to the modified instance, and initializes new slots, as described in

Legend:
Removed from v.1.2.2.6  
changed lines
  Added in v.1.2.2.7

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26