• Jeremy Hylton's avatar
    potentially useless optimization · 9e392e24
    Jeremy Hylton yazdı
    The previous checkin (2.84) added a PyErr_Format call that made the
    cost of raising an AttributeError much more expensive.  In general
    this doesn't matter, except that checks for __init__ and
    __del__ methods, where exceptions are caught and cleared in C, also
    got much more expensive.
    
    The fix is to split instance_getattr1 into two calls:
    
    instance_getattr2 checks the instance and the class for the attribute
    and returns it or returns NULL on error.  It does not raise an
    exception.
    
    instance_getattr1 does rexec checks, then calls instance_getattr2.  It
    raises an exception if instance_getattr2 returns NULL.
    
    PyInstance_New and instance_dealloc now call instance_getattr2
    directly.
    9e392e24
Adı
Son kayıt (commit)
Son güncelleme
..
Makefile.in Loading commit data...
abstract.c Loading commit data...
bufferobject.c Loading commit data...
classobject.c Loading commit data...
cobject.c Loading commit data...
complexobject.c Loading commit data...
dictobject.c Loading commit data...
fileobject.c Loading commit data...
floatobject.c Loading commit data...
frameobject.c Loading commit data...
funcobject.c Loading commit data...
intobject.c Loading commit data...
listobject.c Loading commit data...
longobject.c Loading commit data...
methodobject.c Loading commit data...
moduleobject.c Loading commit data...
object.c Loading commit data...
rangeobject.c Loading commit data...
sliceobject.c Loading commit data...
stringobject.c Loading commit data...
tupleobject.c Loading commit data...
typeobject.c Loading commit data...
unicodectype.c Loading commit data...
unicodeobject.c Loading commit data...
xxobject.c Loading commit data...