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*
stringlib_isspace(PyObject * self)8 stringlib_isspace(PyObject *self)
9 {
10 return _Py_bytes_isspace(STRINGLIB_STR(self), STRINGLIB_LEN(self));
11 }
12
13 static PyObject*
stringlib_isalpha(PyObject * self)14 stringlib_isalpha(PyObject *self)
15 {
16 return _Py_bytes_isalpha(STRINGLIB_STR(self), STRINGLIB_LEN(self));
17 }
18
19 static PyObject*
stringlib_isalnum(PyObject * self)20 stringlib_isalnum(PyObject *self)
21 {
22 return _Py_bytes_isalnum(STRINGLIB_STR(self), STRINGLIB_LEN(self));
23 }
24
25 static PyObject*
stringlib_isascii(PyObject * self)26 stringlib_isascii(PyObject *self)
27 {
28 return _Py_bytes_isascii(STRINGLIB_STR(self), STRINGLIB_LEN(self));
29 }
30
31 static PyObject*
stringlib_isdigit(PyObject * self)32 stringlib_isdigit(PyObject *self)
33 {
34 return _Py_bytes_isdigit(STRINGLIB_STR(self), STRINGLIB_LEN(self));
35 }
36
37 static PyObject*
stringlib_islower(PyObject * self)38 stringlib_islower(PyObject *self)
39 {
40 return _Py_bytes_islower(STRINGLIB_STR(self), STRINGLIB_LEN(self));
41 }
42
43 static PyObject*
stringlib_isupper(PyObject * self)44 stringlib_isupper(PyObject *self)
45 {
46 return _Py_bytes_isupper(STRINGLIB_STR(self), STRINGLIB_LEN(self));
47 }
48
49 static PyObject*
stringlib_istitle(PyObject * self)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*
stringlib_lower(PyObject * self)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*
stringlib_upper(PyObject * self)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*
stringlib_title(PyObject * self)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*
stringlib_capitalize(PyObject * self)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*
stringlib_swapcase(PyObject * self)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