[Python-3000] Pre-peps on raise and except changes
Guido van Rossum
guido at python.org
Sat Feb 10 18:09:00 CET 2007
Why don't you want it to mutate the instance?
On 2/10/07, Nick Coghlan <ncoghlan at gmail.com> wrote:
> Collin Winter wrote:
> > I think so. I've already got language ready for the section on using
> > BaseException.with_traceback() in the 2->3 raise translations, and
> > I'll work up additional language for the transition plan sometime this
> > weekend.
>
> If with_traceback() is an instance method, does it mutate the existing
> exception or create a new one?
>
> To avoid any confusion, perhaps it should instead be a class method
> equivalent to the following:
>
> @classmethod
> def with_traceback(*args, **kwds):
> cls = args[0]
> tb = args[1]
> args = args[2:]
> exc = cls(*args, **kwds)
> exc.__traceback__ = tb
> return exc
>
> Usage would look like:
>
> raise E.with_traceback(T, V)
>
>
> Cheers,
> Nick.
>
> --
> Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia
> ---------------------------------------------------------------
> http://www.boredomandlaziness.org
>
--
--Guido van Rossum (home page: http://www.python.org/~guido/)
More information about the Python-3000
mailing list