[Python-checkins] CVS: python/dist/src PLAN.txt,1.1.2.5,1.1.2.6
Guido van Rossum
gvanrossum@users.sourceforge.net
Tue, 03 Jul 2001 17:16:04 -0700
Update of /cvsroot/python/python/dist/src
In directory usw-pr-cvs1:/tmp/cvs-serv27602
Modified Files:
Tag: descr-branch
PLAN.txt
Log Message:
Add commentary to tasks for issubtype() and overriding __new__().
Index: PLAN.txt
===================================================================
RCS file: /cvsroot/python/python/dist/src/Attic/PLAN.txt,v
retrieving revision 1.1.2.5
retrieving revision 1.1.2.6
diff -C2 -r1.1.2.5 -r1.1.2.6
*** PLAN.txt 2001/07/01 19:52:44 1.1.2.5
--- PLAN.txt 2001/07/04 00:16:02 1.1.2.6
***************
*** 26,30 ****
thing yet. There should be fewer APIs and their implementation should
be simpler. The old "abstract subclass" test should probably
! disappear (if we want to root out ExtensionClass).
Check for conflicts between base classes. I fear that the rules used
--- 26,34 ----
thing yet. There should be fewer APIs and their implementation should
be simpler. The old "abstract subclass" test should probably
! disappear (if we want to root out ExtensionClass). *** I think I've
! done 90% of this by creating PyType_IsSubtype() and using it
! appropriately. For now, the old "abstract subclass" test is still
! there, and there may be some places where PyObject_IsSubclass() is
! called where PyType_IsSubtype() would be more appropriate. ***
Check for conflicts between base classes. I fear that the rules used
***************
*** 75,79 ****
Make __new__ overridable through a Python class method (!). Make more
! of the sub-algorithms of type construction available as methods.
More -- I'm sure new issues will crop up as we go.
--- 79,92 ----
Make __new__ overridable through a Python class method (!). Make more
! of the sub-algorithms of type construction available as methods. ***
! After I implemented class methods, I found that in order to be able
! to make an upcall to Base.__new__() and have it create an instance of
! your class (rather than a Base instance), you can't use class methods
! -- you must use static methods. So I've implemented those too. I've
! hooked up __new__ in the right places, so the first part of this is
! now done (still to do the other construction methods -- unclear that
! we really need any though). I expect that some warts will only be
! really debugged when we try to use this for some, eh, interesting
! types such as tuples. ***
More -- I'm sure new issues will crop up as we go.