• Neal Norwitz's avatar
    Variation of patch # 1624059 to speed up checking if an object is a subclass · ee3a1b52
    Neal Norwitz yazdı
    of some of the common builtin types.
    
    Use a bit in tp_flags for each common builtin type.  Check the bit
    to determine if any instance is a subclass of these common types.
    The check avoids a function call and O(n) search of the base classes.
    The check is done in the various Py*_Check macros rather than calling
    PyType_IsSubtype().
    
    All the bits are set in tp_flags when the type is declared
    in the Objects/*object.c files because PyType_Ready() is not called
    for all the types.  Should PyType_Ready() be called for all types?
    If so and the change is made, the changes to the Objects/*object.c files
    can be reverted (remove setting the tp_flags).  Objects/typeobject.c
    would also have to be modified to add conditions
    for Py*_CheckExact() in addition to each the PyType_IsSubtype check.
    ee3a1b52
Adı
Son kayıt (commit)
Son güncelleme
Demo Loading commit data...
Doc Loading commit data...
Grammar Loading commit data...
Include Loading commit data...
Lib Loading commit data...
Mac Loading commit data...
Misc Loading commit data...
Modules Loading commit data...
Objects Loading commit data...
PC Loading commit data...
PCbuild Loading commit data...
PCbuild8 Loading commit data...
Parser Loading commit data...
Python Loading commit data...
RISCOS Loading commit data...
Tools Loading commit data...
.hgtags Loading commit data...
LICENSE Loading commit data...
Makefile.pre.in Loading commit data...
README Loading commit data...
configure Loading commit data...
configure.in Loading commit data...
install-sh Loading commit data...
pyconfig.h.in Loading commit data...
setup.py Loading commit data...