summaryrefslogtreecommitdiff
path: root/numpy/core/src/arraymethods.c
diff options
context:
space:
mode:
authorCharles Harris <charlesr.harris@gmail.com>2006-09-21 07:58:41 +0000
committerCharles Harris <charlesr.harris@gmail.com>2006-09-21 07:58:41 +0000
commitd0b67d883c3eed3ed45721b35910935c36cbeabf (patch)
treeb48a750da76b96d8867088e31b0fe20264d5faf4 /numpy/core/src/arraymethods.c
parent3e47b2420c722cbb61250d816424617603cbc718 (diff)
downloadnumpy-d0b67d883c3eed3ed45721b35910935c36cbeabf.tar.gz
Make a PyArray_SearchsideConverter for the side keyword in searchsorted.
Rename some searchsorted variables with more descriptive names. Do some documentation markup in case we ever run doxygen over the source.
Diffstat (limited to 'numpy/core/src/arraymethods.c')
-rw-r--r--numpy/core/src/arraymethods.c25
1 files changed, 5 insertions, 20 deletions
diff --git a/numpy/core/src/arraymethods.c b/numpy/core/src/arraymethods.c
index 179e48ce9..9733ae75f 100644
--- a/numpy/core/src/arraymethods.c
+++ b/numpy/core/src/arraymethods.c
@@ -887,29 +887,14 @@ static PyObject *
array_searchsorted(PyArrayObject *self, PyObject *args, PyObject *kwds)
{
PyObject *keys;
- char *side = "left";
static char *kwlist[] = {"keys", "side", NULL};
- NPY_SEARCHKIND which;
+ NPY_SEARCHSIDE side = NPY_SEARCHLEFT;
- if (!PyArg_ParseTupleAndKeywords(args, kwds, "O|s", kwlist, &keys, &side))
- return NULL;
- if (strlen(side) < 1) {
- PyErr_SetString(PyExc_ValueError,
- "Searchsorted: side must be nonempty string");
- return PY_FAIL;
- }
-
- if (side[0] == 'l' || side[0] == 'L')
- which = NPY_SEARCHLEFT;
- else if (side[0] == 'r' || side[0] == 'R')
- which = NPY_SEARCHRIGHT;
- else {
- PyErr_Format(PyExc_ValueError,
- "%s is not a valid value of side", side);
- return PY_FAIL;
- }
+ if (!PyArg_ParseTupleAndKeywords(args, kwds, "O|O&", kwlist, &keys,
+ PyArray_SearchsideConverter, &side))
+ return NULL;
- return _ARET(PyArray_SearchSorted(self, keys, which));
+ return _ARET(PyArray_SearchSorted(self, keys, side));
}
static void