Patch by Moshe Zadka: remove the string special case in

PySequence_Contains() now that string objects have this code in their
tp_contains.
This commit is contained in:
Guido van Rossum 2000-03-07 15:54:45 +00:00
parent 9284a572bc
commit 9611e0b462
1 changed files with 0 additions and 18 deletions

View File

@ -1121,24 +1121,6 @@ PySequence_Contains(w, v) /* v in w */
PyObject *x;
PySequenceMethods *sq;
/* Special case for char in string */
if (PyString_Check(w)) {
register char *s, *end;
register char c;
if (!PyString_Check(v) || PyString_Size(v) != 1) {
PyErr_SetString(PyExc_TypeError,
"string member test needs char left operand");
return -1;
}
c = PyString_AsString(v)[0];
s = PyString_AsString(w);
end = s + PyString_Size(w);
while (s < end) {
if (c == *s++)
return 1;
}
return 0;
}
if(PyType_HasFeature(w->ob_type, Py_TPFLAGS_HAVE_SEQUENCE_IN)) {
sq = w->ob_type->tp_as_sequence;
if(sq != NULL && sq->sq_contains != NULL)