Antoine Pitrou wrote: > James Y Knight <foom <at> fuhm.net> writes: >> It seems that a separate method "_internal_close" should've been >> defined to do the actual closing of the file, and the close() method >> should've been defined on the base class as "self.flush(); >> self._internal_close()" and never overridden. > > I'm completely open to changes as long as there is a reasonable consensus > around > them. Your proposal looks sane, although the fact that a semi-private method > (starting with an underscore) is designed to be overriden in some classes is a > bit annoying.
Note that we already do that in a couple of places where it makes sense - in those cases the underscore is there to tell *clients* of the class "don't call this directly", but it is still explicitly documented as part of the subclassing API. (the only example I can find at the moment is in asynchat, but I thought there were a couple of more common ones than that - hopefully I'll think of them later) Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia --------------------------------------------------------------- _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com