Commit 93d44819 authored by Raymond Hettinger's avatar Raymond Hettinger

Add identity shortcut to PyObject_RichCompareBool.

parent 07973dab
...@@ -871,9 +871,19 @@ Done: ...@@ -871,9 +871,19 @@ Done:
int int
PyObject_RichCompareBool(PyObject *v, PyObject *w, int op) PyObject_RichCompareBool(PyObject *v, PyObject *w, int op)
{ {
PyObject *res = PyObject_RichCompare(v, w, op); PyObject *res;
int ok; int ok;
/* Quick result when objects are the same.
Guarantees that identity implies equality. */
if (v == w) {
if (op == Py_EQ)
return 1;
else if (op == Py_NE)
return 0;
}
res = PyObject_RichCompare(v, w, op);
if (res == NULL) if (res == NULL)
return -1; return -1;
if (PyBool_Check(res)) if (PyBool_Check(res))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment