1 #if STRINGLIB_IS_UNICODE 2 # error "ctype.h only compatible with byte-wise strings" 3 #endif 4 5 #include "bytes_methods.h" 6 7 static PyObject* 8 stringlib_isspace(PyObject *self) 9 { 10 return _Py_bytes_isspace(STRINGLIB_STR(self), STRINGLIB_LEN(self)); 11 } 12 13 static PyObject* 14 stringlib_isalpha(PyObject *self) 15 { 16 return _Py_bytes_isalpha(STRINGLIB_STR(self), STRINGLIB_LEN(self)); 17 } 18 19 static PyObject* 20 stringlib_isalnum(PyObject *self) 21 { 22 return _Py_bytes_isalnum(STRINGLIB_STR(self), STRINGLIB_LEN(self)); 23 } 24 25 static PyObject* 26 stringlib_isascii(PyObject *self) 27 { 28 return _Py_bytes_isascii(STRINGLIB_STR(self), STRINGLIB_LEN(self)); 29 } 30 31 static PyObject* 32 stringlib_isdigit(PyObject *self) 33 { 34 return _Py_bytes_isdigit(STRINGLIB_STR(self), STRINGLIB_LEN(self)); 35 } 36 37 static PyObject* 38 stringlib_islower(PyObject *self) 39 { 40 return _Py_bytes_islower(STRINGLIB_STR(self), STRINGLIB_LEN(self)); 41 } 42 43 static PyObject* 44 stringlib_isupper(PyObject *self) 45 { 46 return _Py_bytes_isupper(STRINGLIB_STR(self), STRINGLIB_LEN(self)); 47 } 48 49 static PyObject* 50 stringlib_istitle(PyObject *self) 51 { 52 return _Py_bytes_istitle(STRINGLIB_STR(self), STRINGLIB_LEN(self)); 53 } 54 55 56 /* functions that return a new object partially translated by ctype funcs: */ 57 58 static PyObject* 59 stringlib_lower(PyObject *self) 60 { 61 PyObject* newobj; 62 newobj = STRINGLIB_NEW(NULL, STRINGLIB_LEN(self)); 63 if (!newobj) 64 return NULL; 65 _Py_bytes_lower(STRINGLIB_STR(newobj), STRINGLIB_STR(self), 66 STRINGLIB_LEN(self)); 67 return newobj; 68 } 69 70 static PyObject* 71 stringlib_upper(PyObject *self) 72 { 73 PyObject* newobj; 74 newobj = STRINGLIB_NEW(NULL, STRINGLIB_LEN(self)); 75 if (!newobj) 76 return NULL; 77 _Py_bytes_upper(STRINGLIB_STR(newobj), STRINGLIB_STR(self), 78 STRINGLIB_LEN(self)); 79 return newobj; 80 } 81 82 static PyObject* 83 stringlib_title(PyObject *self) 84 { 85 PyObject* newobj; 86 newobj = STRINGLIB_NEW(NULL, STRINGLIB_LEN(self)); 87 if (!newobj) 88 return NULL; 89 _Py_bytes_title(STRINGLIB_STR(newobj), STRINGLIB_STR(self), 90 STRINGLIB_LEN(self)); 91 return newobj; 92 } 93 94 static PyObject* 95 stringlib_capitalize(PyObject *self) 96 { 97 PyObject* newobj; 98 newobj = STRINGLIB_NEW(NULL, STRINGLIB_LEN(self)); 99 if (!newobj) 100 return NULL; 101 _Py_bytes_capitalize(STRINGLIB_STR(newobj), STRINGLIB_STR(self), 102 STRINGLIB_LEN(self)); 103 return newobj; 104 } 105 106 static PyObject* 107 stringlib_swapcase(PyObject *self) 108 { 109 PyObject* newobj; 110 newobj = STRINGLIB_NEW(NULL, STRINGLIB_LEN(self)); 111 if (!newobj) 112 return NULL; 113 _Py_bytes_swapcase(STRINGLIB_STR(newobj), STRINGLIB_STR(self), 114 STRINGLIB_LEN(self)); 115 return newobj; 116 } 117