Compare instance methods by comparing the object and the function.

This commit is contained in:
Guido van Rossum 1992-09-03 20:39:51 +00:00
parent aa7ca2dc1a
commit ebc8c51cde
1 changed files with 11 additions and 1 deletions

View File

@ -828,6 +828,16 @@ instancemethod_dealloc(im)
free((ANY *)im);
}
static int
instancemethod_compare(a, b)
instancemethodobject *a, *b;
{
int cmp = cmpobject(a->im_self, b->im_self);
if (cmp == 0)
cmp = cmpobject(a->im_func, b->im_func);
return cmp;
}
typeobject Instancemethodtype = {
OB_HEAD_INIT(&Typetype)
0,
@ -838,7 +848,7 @@ typeobject Instancemethodtype = {
0, /*tp_print*/
instancemethod_getattr, /*tp_getattr*/
0, /*tp_setattr*/
0, /*tp_compare*/
instancemethod_compare, /*tp_compare*/
0, /*tp_repr*/
0, /*tp_as_number*/
0, /*tp_as_sequence*/