Lines Matching defs:descriptor
531 OVERRIDING, /* Is an overriding descriptor, and will remain so. */
534 OBJECT_SLOT, /* Is an object slot descriptor */
535 OTHER_SLOT, /* Is a slot descriptor of another type */
536 NON_OVERRIDING, /* Is another non-overriding descriptor, and is an instance of an immutable class*/
539 NON_DESCRIPTOR, /* Is not a descriptor, and is an instance of an immutable class */
540 MUTABLE, /* Instance of a mutable class; might, or might not, be a descriptor */
562 PyObject *descriptor = _PyType_Lookup(type, name);
563 *descr = descriptor;
564 if (descriptor == NULL) {
567 PyTypeObject *desc_cls = Py_TYPE(descriptor);
573 PyMemberDescrObject *member = (PyMemberDescrObject *)descriptor;
584 if (descriptor == _PyType_Lookup(&PyBaseObject_Type, name)) {
594 if (Py_IS_TYPE(descriptor, &PyClassMethodDescr_Type)) {
597 if (Py_IS_TYPE(descriptor, &PyClassMethod_Type)) {
613 // No descriptor, or non overriding.
1028 * of caching a borrowed descriptor. The MCACHE infrastructure does all the
1217 PyObject *descriptor = _PyType_Lookup(cls, &_Py_ID(__getitem__));
1218 if (descriptor && Py_TYPE(descriptor) == &PyFunction_Type) {
1223 PyFunctionObject *func = (PyFunctionObject *)descriptor;
1246 ((PyHeapTypeObject *)container_type)->_spec_cache.getitem = descriptor;
1341 PyObject *descriptor = _PyType_Lookup(container_type, &_Py_ID(__setitem__));
1342 if (descriptor && Py_TYPE(descriptor) == &PyFunction_Type) {
1343 PyFunctionObject *func = (PyFunctionObject *)descriptor;