From 3a6f97850b2a4071f3015033fa3d68ce6fa576f4 Mon Sep 17 00:00:00 2001 From: Neal Norwitz Date: Mon, 25 Mar 2002 20:46:46 +0000 Subject: Remove many uses of PyArg_NoArgs macro, change METH_OLDARGS to METH_NOARGS. --- Include/Python.h | 3 +++ Modules/_curses_panel.c | 19 +++++++------------ Modules/_localemodule.c | 16 +++++----------- Modules/bsddbmodule.c | 50 ++++++++++++++++++++----------------------------- Modules/md5module.c | 21 ++++++--------------- Modules/pwdmodule.c | 6 ++---- Modules/readline.c | 33 ++++++++++---------------------- Modules/signalmodule.c | 7 ++----- Modules/threadmodule.c | 32 ++++++++++--------------------- 9 files changed, 65 insertions(+), 122 deletions(-) diff --git a/Include/Python.h b/Include/Python.h index d1ffc73..d3fce4b 100644 --- a/Include/Python.h +++ b/Include/Python.h @@ -118,6 +118,9 @@ #include "abstract.h" #define PyArg_GetInt(v, a) PyArg_Parse((v), "i", (a)) + +/* PyArg_NoArgs should not be necessary. + Set ml_flags in the PyMethodDef to METH_NOARGS. */ #define PyArg_NoArgs(v) PyArg_Parse(v, "") /* Convert a possibly signed character to a nonnegative int */ diff --git a/Modules/_curses_panel.c b/Modules/_curses_panel.c index 5736868..5603fe9 100644 --- a/Modules/_curses_panel.c +++ b/Modules/_curses_panel.c @@ -355,14 +355,12 @@ PyTypeObject PyCursesPanel_Type = { panel.above() *requires* a panel object in the first place which may be undesirable. */ static PyObject * -PyCurses_bottom_panel(PyObject *self, PyObject *args) +PyCurses_bottom_panel(PyObject *self) { PANEL *pan; PyCursesPanelObject *po; PyCursesInitialised; - - if (!PyArg_NoArgs(args)) return NULL; pan = panel_above(NULL); @@ -403,14 +401,12 @@ PyCurses_new_panel(PyObject *self, PyObject *args) *requires* a panel object in the first place which may be undesirable. */ static PyObject * -PyCurses_top_panel(PyObject *self, PyObject *args) +PyCurses_top_panel(PyObject *self) { PANEL *pan; PyCursesPanelObject *po; PyCursesInitialised; - - if (!PyArg_NoArgs(args)) return NULL; pan = panel_below(NULL); @@ -429,10 +425,9 @@ PyCurses_top_panel(PyObject *self, PyObject *args) return (PyObject *)po; } -static PyObject *PyCurses_update_panels(PyObject *self, PyObject *args) +static PyObject *PyCurses_update_panels(PyObject *self) { PyCursesInitialised; - if (!PyArg_NoArgs(args)) return NULL; update_panels(); Py_INCREF(Py_None); return Py_None; @@ -442,10 +437,10 @@ static PyObject *PyCurses_update_panels(PyObject *self, PyObject *args) /* List of functions defined in the module */ static PyMethodDef PyCurses_methods[] = { - {"bottom_panel", (PyCFunction)PyCurses_bottom_panel}, - {"new_panel", (PyCFunction)PyCurses_new_panel, METH_VARARGS}, - {"top_panel", (PyCFunction)PyCurses_top_panel}, - {"update_panels", (PyCFunction)PyCurses_update_panels}, + {"bottom_panel", (PyCFunction)PyCurses_bottom_panel, METH_NOARGS}, + {"new_panel", (PyCFunction)PyCurses_new_panel, METH_VARARGS}, + {"top_panel", (PyCFunction)PyCurses_top_panel, METH_NOARGS}, + {"update_panels", (PyCFunction)PyCurses_update_panels, METH_NOARGS}, {NULL, NULL} /* sentinel */ }; diff --git a/Modules/_localemodule.c b/Modules/_localemodule.c index c617bfb..cfbef9f 100644 --- a/Modules/_localemodule.c +++ b/Modules/_localemodule.c @@ -245,15 +245,12 @@ static char localeconv__doc__[] = ; static PyObject* -PyLocale_localeconv(PyObject* self, PyObject* args) +PyLocale_localeconv(PyObject* self) { PyObject* result; struct lconv *l; PyObject *x; - if (!PyArg_NoArgs(args)) - return NULL; - result = PyDict_New(); if (!result) return NULL; @@ -368,14 +365,11 @@ PyLocale_strxfrm(PyObject* self, PyObject* args) #if defined(MS_WIN32) static PyObject* -PyLocale_getdefaultlocale(PyObject* self, PyObject* args) +PyLocale_getdefaultlocale(PyObject* self) { char encoding[100]; char locale[100]; - if (!PyArg_NoArgs(args)) - return NULL; - PyOS_snprintf(encoding, sizeof(encoding), "cp%d", GetACP()); if (GetLocaleInfo(LOCALE_USER_DEFAULT, @@ -408,7 +402,7 @@ PyLocale_getdefaultlocale(PyObject* self, PyObject* args) #if defined(macintosh) static PyObject* -PyLocale_getdefaultlocale(PyObject* self, PyObject* args) +PyLocale_getdefaultlocale(PyObject* self) { return Py_BuildValue("Os", Py_None, PyMac_getscript()); } @@ -530,13 +524,13 @@ static struct PyMethodDef PyLocale_Methods[] = { {"setlocale", (PyCFunction) PyLocale_setlocale, METH_VARARGS, setlocale__doc__}, {"localeconv", (PyCFunction) PyLocale_localeconv, - 0, localeconv__doc__}, + METH_NOARGS, localeconv__doc__}, {"strcoll", (PyCFunction) PyLocale_strcoll, METH_VARARGS, strcoll__doc__}, {"strxfrm", (PyCFunction) PyLocale_strxfrm, METH_VARARGS, strxfrm__doc__}, #if defined(MS_WIN32) || defined(macintosh) - {"_getdefaultlocale", (PyCFunction) PyLocale_getdefaultlocale, 0}, + {"_getdefaultlocale", (PyCFunction) PyLocale_getdefaultlocale, METH_NOARGS}, #endif #ifdef HAVE_LANGINFO_H {"nl_langinfo", (PyCFunction) PyLocale_nl_langinfo, diff --git a/Modules/bsddbmodule.c b/Modules/bsddbmodule.c index 85dfa83..d767626 100644 --- a/Modules/bsddbmodule.c +++ b/Modules/bsddbmodule.c @@ -380,10 +380,8 @@ static PyMappingMethods bsddb_as_mapping = { }; static PyObject * -bsddb_close(bsddbobject *dp, PyObject *args) +bsddb_close(bsddbobject *dp) { - if (!PyArg_NoArgs(args)) - return NULL; if (dp->di_bsddb != NULL) { int status; BSDDB_BGN_SAVE(dp) @@ -401,7 +399,7 @@ bsddb_close(bsddbobject *dp, PyObject *args) } static PyObject * -bsddb_keys(bsddbobject *dp, PyObject *args) +bsddb_keys(bsddbobject *dp) { PyObject *list, *item=NULL; DBT krec, drec; @@ -409,8 +407,6 @@ bsddb_keys(bsddbobject *dp, PyObject *args) int status; int err; - if (!PyArg_NoArgs(args)) - return NULL; check_bsddbobject_open(dp, NULL); list = PyList_New(0); if (list == NULL) @@ -562,7 +558,7 @@ bsddb_set_location(bsddbobject *dp, PyObject *key) } static PyObject * -bsddb_seq(bsddbobject *dp, PyObject *args, int sequence_request) +bsddb_seq(bsddbobject *dp, int sequence_request) { int status; DBT krec, drec; @@ -570,9 +566,6 @@ bsddb_seq(bsddbobject *dp, PyObject *args, int sequence_request) char *ddata=NULL,dbuf[4096]; PyObject *result; - if (!PyArg_NoArgs(args)) - return NULL; - check_bsddbobject_open(dp, NULL); krec.data = 0; krec.size = 0; @@ -598,11 +591,10 @@ bsddb_seq(bsddbobject *dp, PyObject *args, int sequence_request) if (status < 0) PyErr_SetFromErrno(BsddbError); else - PyErr_SetObject(PyExc_KeyError, args); + PyErr_SetString(PyExc_KeyError, "no key/data pairs"); return NULL; } - if (dp->di_type == DB_RECNO) result = Py_BuildValue("is#", *((int*)kdata), ddata, drec.size); @@ -615,32 +607,30 @@ bsddb_seq(bsddbobject *dp, PyObject *args, int sequence_request) } static PyObject * -bsddb_next(bsddbobject *dp, PyObject *key) +bsddb_next(bsddbobject *dp) { - return bsddb_seq(dp, key, R_NEXT); + return bsddb_seq(dp, R_NEXT); } static PyObject * -bsddb_previous(bsddbobject *dp, PyObject *key) +bsddb_previous(bsddbobject *dp) { - return bsddb_seq(dp, key, R_PREV); + return bsddb_seq(dp, R_PREV); } static PyObject * -bsddb_first(bsddbobject *dp, PyObject *key) +bsddb_first(bsddbobject *dp) { - return bsddb_seq(dp, key, R_FIRST); + return bsddb_seq(dp, R_FIRST); } static PyObject * -bsddb_last(bsddbobject *dp, PyObject *key) +bsddb_last(bsddbobject *dp) { - return bsddb_seq(dp, key, R_LAST); + return bsddb_seq(dp, R_LAST); } static PyObject * -bsddb_sync(bsddbobject *dp, PyObject *args) +bsddb_sync(bsddbobject *dp) { int status; - if (!PyArg_NoArgs(args)) - return NULL; check_bsddbobject_open(dp, NULL); BSDDB_BGN_SAVE(dp) status = (dp->di_bsddb->sync)(dp->di_bsddb, 0); @@ -652,15 +642,15 @@ bsddb_sync(bsddbobject *dp, PyObject *args) return PyInt_FromLong(status = 0); } static PyMethodDef bsddb_methods[] = { - {"close", (PyCFunction)bsddb_close, METH_OLDARGS}, - {"keys", (PyCFunction)bsddb_keys, METH_OLDARGS}, + {"close", (PyCFunction)bsddb_close, METH_NOARGS}, + {"keys", (PyCFunction)bsddb_keys, METH_NOARGS}, {"has_key", (PyCFunction)bsddb_has_key, METH_OLDARGS}, {"set_location", (PyCFunction)bsddb_set_location, METH_OLDARGS}, - {"next", (PyCFunction)bsddb_next, METH_OLDARGS}, - {"previous", (PyCFunction)bsddb_previous, METH_OLDARGS}, - {"first", (PyCFunction)bsddb_first, METH_OLDARGS}, - {"last", (PyCFunction)bsddb_last, METH_OLDARGS}, - {"sync", (PyCFunction)bsddb_sync, METH_OLDARGS}, + {"next", (PyCFunction)bsddb_next, METH_NOARGS}, + {"previous", (PyCFunction)bsddb_previous, METH_NOARGS}, + {"first", (PyCFunction)bsddb_first, METH_NOARGS}, + {"last", (PyCFunction)bsddb_last, METH_NOARGS}, + {"sync", (PyCFunction)bsddb_sync, METH_NOARGS}, {NULL, NULL} /* sentinel */ }; diff --git a/Modules/md5module.c b/Modules/md5module.c index 3ddacf5..fb904f4 100644 --- a/Modules/md5module.c +++ b/Modules/md5module.c @@ -70,14 +70,11 @@ arguments."; static PyObject * -md5_digest(md5object *self, PyObject *args) +md5_digest(md5object *self) { MD5_CTX mdContext; unsigned char aDigest[16]; - if (!PyArg_NoArgs(args)) - return NULL; - /* make a temporary copy, and perform the final */ mdContext = self->md5; MD5Final(aDigest, &mdContext); @@ -94,16 +91,13 @@ including null bytes."; static PyObject * -md5_hexdigest(md5object *self, PyObject *args) +md5_hexdigest(md5object *self) { MD5_CTX mdContext; unsigned char digest[16]; unsigned char hexdigest[32]; int i, j; - if (!PyArg_NoArgs(args)) - return NULL; - /* make a temporary copy, and perform the final */ mdContext = self->md5; MD5Final(digest, &mdContext); @@ -129,13 +123,10 @@ Like digest(), but returns the digest as a string of hexadecimal digits."; static PyObject * -md5_copy(md5object *self, PyObject *args) +md5_copy(md5object *self) { md5object *md5p; - if (!PyArg_NoArgs(args)) - return NULL; - if ((md5p = newmd5object()) == NULL) return NULL; @@ -152,9 +143,9 @@ Return a copy (``clone'') of the md5 object."; static PyMethodDef md5_methods[] = { {"update", (PyCFunction)md5_update, METH_OLDARGS, update_doc}, - {"digest", (PyCFunction)md5_digest, METH_OLDARGS, digest_doc}, - {"hexdigest", (PyCFunction)md5_hexdigest, METH_OLDARGS, hexdigest_doc}, - {"copy", (PyCFunction)md5_copy, METH_OLDARGS, copy_doc}, + {"digest", (PyCFunction)md5_digest, METH_NOARGS, digest_doc}, + {"hexdigest", (PyCFunction)md5_hexdigest, METH_NOARGS, hexdigest_doc}, + {"copy", (PyCFunction)md5_copy, METH_NOARGS, copy_doc}, {NULL, NULL} /* sentinel */ }; diff --git a/Modules/pwdmodule.c b/Modules/pwdmodule.c index 91989b7..a52d45f 100644 --- a/Modules/pwdmodule.c +++ b/Modules/pwdmodule.c @@ -120,12 +120,10 @@ in arbitrary order.\n\ See pwd.__doc__ for more on password database entries."; static PyObject * -pwd_getpwall(PyObject *self, PyObject *args) +pwd_getpwall(PyObject *self) { PyObject *d; struct passwd *p; - if (!PyArg_NoArgs(args)) - return NULL; if ((d = PyList_New(0)) == NULL) return NULL; #if defined(PYOS_OS2) && defined(PYCC_GCC) @@ -151,7 +149,7 @@ static PyMethodDef pwd_methods[] = { {"getpwuid", pwd_getpwuid, METH_OLDARGS, pwd_getpwuid__doc__}, {"getpwnam", pwd_getpwnam, METH_OLDARGS, pwd_getpwnam__doc__}, #ifdef HAVE_GETPWENT - {"getpwall", pwd_getpwall, METH_OLDARGS, pwd_getpwall__doc__}, + {"getpwall", pwd_getpwall, METH_NOARGS, pwd_getpwall__doc__}, #endif {NULL, NULL} /* sentinel */ }; diff --git a/Modules/readline.c b/Modules/readline.c index e573773..ed78b92 100644 --- a/Modules/readline.c +++ b/Modules/readline.c @@ -237,11 +237,8 @@ static PyObject *endidx = NULL; /* get the beginning index for the scope of the tab-completion */ static PyObject * -get_begidx(PyObject *self, PyObject *args) +get_begidx(PyObject *self) { - if(!PyArg_NoArgs(args)) { - return NULL; - } Py_INCREF(begidx); return begidx; } @@ -252,11 +249,8 @@ get the beginning index of the readline tab-completion scope"; /* get the ending index for the scope of the tab-completion */ static PyObject * -get_endidx(PyObject *self, PyObject *args) +get_endidx(PyObject *self) { - if(!PyArg_NoArgs(args)) { - return NULL; - } Py_INCREF(endidx); return endidx; } @@ -307,11 +301,8 @@ add a line to the history buffer"; /* get the tab-completion word-delimiters that readline uses */ static PyObject * -get_completer_delims(PyObject *self, PyObject *args) +get_completer_delims(PyObject *self) { - if(!PyArg_NoArgs(args)) { - return NULL; - } return PyString_FromString(rl_completer_word_break_characters); } @@ -359,12 +350,10 @@ return the current contents of history item at index.\ /* Exported function to get current length of history */ static PyObject * -get_current_history_length(PyObject *self, PyObject *args) +get_current_history_length(PyObject *self) { HISTORY_STATE *hist_st; - if (!PyArg_NoArgs(args)) - return NULL; hist_st = history_get_history_state(); return PyInt_FromLong(hist_st ? (long) hist_st->length : (long) 0); } @@ -377,10 +366,8 @@ return the current (not the maximum) length of history.\ /* Exported function to read the current line buffer */ static PyObject * -get_line_buffer(PyObject *self, PyObject *args) +get_line_buffer(PyObject *self) { - if (!PyArg_NoArgs(args)) - return NULL; return PyString_FromString(rl_line_buffer); } @@ -427,7 +414,7 @@ static struct PyMethodDef readline_methods[] = { {"parse_and_bind", parse_and_bind, METH_VARARGS, doc_parse_and_bind}, {"get_line_buffer", get_line_buffer, - METH_OLDARGS, doc_get_line_buffer}, + METH_NOARGS, doc_get_line_buffer}, {"insert_text", insert_text, METH_VARARGS, doc_insert_text}, {"redisplay", (PyCFunction)redisplay, METH_NOARGS, doc_redisplay}, {"read_init_file", read_init_file, METH_VARARGS, doc_read_init_file}, @@ -438,20 +425,20 @@ static struct PyMethodDef readline_methods[] = {"get_history_item", get_history_item, METH_VARARGS, doc_get_history_item}, {"get_current_history_length", get_current_history_length, - METH_OLDARGS, doc_get_current_history_length}, + METH_NOARGS, doc_get_current_history_length}, {"set_history_length", set_history_length, METH_VARARGS, set_history_length_doc}, {"get_history_length", get_history_length, METH_VARARGS, get_history_length_doc}, {"set_completer", set_completer, METH_VARARGS, doc_set_completer}, - {"get_begidx", get_begidx, METH_OLDARGS, doc_get_begidx}, - {"get_endidx", get_endidx, METH_OLDARGS, doc_get_endidx}, + {"get_begidx", get_begidx, METH_NOARGS, doc_get_begidx}, + {"get_endidx", get_endidx, METH_NOARGS, doc_get_endidx}, {"set_completer_delims", set_completer_delims, METH_VARARGS, doc_set_completer_delims}, {"add_history", py_add_history, METH_VARARGS, doc_add_history}, {"get_completer_delims", get_completer_delims, - METH_OLDARGS, doc_get_completer_delims}, + METH_NOARGS, doc_get_completer_delims}, {"set_startup_hook", set_startup_hook, METH_VARARGS, doc_set_startup_hook}, #ifdef HAVE_RL_PRE_INPUT_HOOK diff --git a/Modules/signalmodule.c b/Modules/signalmodule.c index b27c4b7..e4298c6 100644 --- a/Modules/signalmodule.c +++ b/Modules/signalmodule.c @@ -163,11 +163,8 @@ Arrange for SIGALRM to arrive after the given number of seconds."; #ifdef HAVE_PAUSE static PyObject * -signal_pause(PyObject *self, PyObject *args) +signal_pause(PyObject *self) { - if (!PyArg_NoArgs(args)) - return NULL; - Py_BEGIN_ALLOW_THREADS (void)pause(); Py_END_ALLOW_THREADS @@ -282,7 +279,7 @@ static PyMethodDef signal_methods[] = { {"signal", signal_signal, METH_OLDARGS, signal_doc}, {"getsignal", signal_getsignal, METH_OLDARGS, getsignal_doc}, #ifdef HAVE_PAUSE - {"pause", signal_pause, METH_OLDARGS, pause_doc}, + {"pause", signal_pause, METH_NOARGS, pause_doc}, #endif {"default_int_handler", signal_default_int_handler, METH_OLDARGS, default_int_handler_doc}, diff --git a/Modules/threadmodule.c b/Modules/threadmodule.c index dfc5cbe..cf4d3d5 100644 --- a/Modules/threadmodule.c +++ b/Modules/threadmodule.c @@ -87,11 +87,8 @@ and the return value reflects whether the lock is acquired.\n\ The blocking operation is not interruptible."; static PyObject * -lock_PyThread_release_lock(lockobject *self, PyObject *args) +lock_PyThread_release_lock(lockobject *self) { - if (!PyArg_NoArgs(args)) - return NULL; - /* Sanity check: the lock must be locked */ if (PyThread_acquire_lock(self->lock_lock, 0)) { PyThread_release_lock(self->lock_lock); @@ -113,11 +110,8 @@ the lock to acquire the lock. The lock must be in the locked state,\n\ but it needn't be locked by the same thread that unlocks it."; static PyObject * -lock_locked_lock(lockobject *self, PyObject *args) +lock_locked_lock(lockobject *self) { - if (!PyArg_NoArgs(args)) - return NULL; - if (PyThread_acquire_lock(self->lock_lock, 0)) { PyThread_release_lock(self->lock_lock); return PyInt_FromLong(0L); @@ -137,11 +131,11 @@ static PyMethodDef lock_methods[] = { {"acquire", (PyCFunction)lock_PyThread_acquire_lock, METH_OLDARGS, acquire_doc}, {"release_lock", (PyCFunction)lock_PyThread_release_lock, - METH_OLDARGS, release_doc}, + METH_NOARGS, release_doc}, {"release", (PyCFunction)lock_PyThread_release_lock, METH_OLDARGS, release_doc}, {"locked_lock", (PyCFunction)lock_locked_lock, - METH_OLDARGS, locked_doc}, + METH_NOARGS, locked_doc}, {"locked", (PyCFunction)lock_locked_lock, METH_OLDARGS, locked_doc}, {NULL, NULL} /* sentinel */ @@ -267,10 +261,8 @@ when the function raises an unhandled exception; a stack trace will be\n\ printed unless the exception is SystemExit.\n"; static PyObject * -thread_PyThread_exit_thread(PyObject *self, PyObject *args) +thread_PyThread_exit_thread(PyObject *self) { - if (!PyArg_NoArgs(args)) - return NULL; PyErr_SetNone(PyExc_SystemExit); return NULL; } @@ -295,10 +287,8 @@ thread_PyThread_exit_prog(PyObject *self, PyObject *args) #endif static PyObject * -thread_PyThread_allocate_lock(PyObject *self, PyObject *args) +thread_PyThread_allocate_lock(PyObject *self) { - if (!PyArg_NoArgs(args)) - return NULL; return (PyObject *) newlockobject(); } @@ -309,11 +299,9 @@ static char allocate_doc[] = Create a new lock object. See LockType.__doc__ for information about locks."; static PyObject * -thread_get_ident(PyObject *self, PyObject *args) +thread_get_ident(PyObject *self) { long ident; - if (!PyArg_NoArgs(args)) - return NULL; ident = PyThread_get_thread_ident(); if (ident == -1) { PyErr_SetString(ThreadError, "no current thread ident"); @@ -341,15 +329,15 @@ static PyMethodDef thread_methods[] = { METH_VARARGS, start_new_doc}, {"allocate_lock", (PyCFunction)thread_PyThread_allocate_lock, - METH_OLDARGS, allocate_doc}, + METH_NOARGS, allocate_doc}, {"allocate", (PyCFunction)thread_PyThread_allocate_lock, METH_OLDARGS, allocate_doc}, {"exit_thread", (PyCFunction)thread_PyThread_exit_thread, - METH_OLDARGS, exit_doc}, + METH_NOARGS, exit_doc}, {"exit", (PyCFunction)thread_PyThread_exit_thread, METH_OLDARGS, exit_doc}, {"get_ident", (PyCFunction)thread_get_ident, - METH_OLDARGS, get_ident_doc}, + METH_NOARGS, get_ident_doc}, #ifndef NO_EXIT_PROG {"exit_prog", (PyCFunction)thread_PyThread_exit_prog}, #endif -- cgit v0.12