Author: Manuel Jacob Branch: refactor-str-types Changeset: r65628:bbf730de6201 Date: 2013-07-24 21:52 +0200 http://bitbucket.org/pypy/pypy/changeset/bbf730de6201/
Log: Pass StringMethods._is_generic() the name of the function instead of the function. diff --git a/pypy/objspace/std/stringmethods.py b/pypy/objspace/std/stringmethods.py --- a/pypy/objspace/std/stringmethods.py +++ b/pypy/objspace/std/stringmethods.py @@ -277,31 +277,32 @@ return space.wrap(res) @specialize.arg(2) - def _is_generic(self, space, fun): + def _is_generic(self, space, func_name): + func = getattr(self, func_name) v = self._val(space) if len(v) == 0: return space.w_False if len(v) == 1: c = v[0] - return space.newbool(fun(c)) + return space.newbool(func(c)) else: - return self._is_generic_loop(space, v, fun) + return self._is_generic_loop(space, v, func) @specialize.arg(3) - def _is_generic_loop(self, space, v, fun): + def _is_generic_loop(self, space, v, func): for idx in range(len(v)): - if not fun(v[idx]): + if not func(v[idx]): return space.w_False return space.w_True def descr_isalnum(self, space): - return self._is_generic(space, self._isalnum) + return self._is_generic(space, '_isalnum') def descr_isalpha(self, space): - return self._is_generic(space, self._isalpha) + return self._is_generic(space, '_isalpha') def descr_isdigit(self, space): - return self._is_generic(space, self._isdigit) + return self._is_generic(space, '_isdigit') def descr_islower(self, space): v = self._val(space) @@ -317,7 +318,7 @@ return space.newbool(cased) def descr_isspace(self, space): - return self._is_generic(space, self._isspace) + return self._is_generic(space, '_isspace') def descr_istitle(self, space): input = self._val(space) _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit