1 | #ifndef Py_BYTES_CTYPE_H
|
---|
2 | #define Py_BYTES_CTYPE_H
|
---|
3 |
|
---|
4 | /*
|
---|
5 | * The internal implementation behind PyString (bytes) and PyBytes (buffer)
|
---|
6 | * methods of the given names, they operate on ASCII byte strings.
|
---|
7 | */
|
---|
8 | extern PyObject* _Py_bytes_isspace(const char *cptr, Py_ssize_t len);
|
---|
9 | extern PyObject* _Py_bytes_isalpha(const char *cptr, Py_ssize_t len);
|
---|
10 | extern PyObject* _Py_bytes_isalnum(const char *cptr, Py_ssize_t len);
|
---|
11 | extern PyObject* _Py_bytes_isdigit(const char *cptr, Py_ssize_t len);
|
---|
12 | extern PyObject* _Py_bytes_islower(const char *cptr, Py_ssize_t len);
|
---|
13 | extern PyObject* _Py_bytes_isupper(const char *cptr, Py_ssize_t len);
|
---|
14 | extern PyObject* _Py_bytes_istitle(const char *cptr, Py_ssize_t len);
|
---|
15 |
|
---|
16 | /* These store their len sized answer in the given preallocated *result arg. */
|
---|
17 | extern void _Py_bytes_lower(char *result, const char *cptr, Py_ssize_t len);
|
---|
18 | extern void _Py_bytes_upper(char *result, const char *cptr, Py_ssize_t len);
|
---|
19 | extern void _Py_bytes_title(char *result, char *s, Py_ssize_t len);
|
---|
20 | extern void _Py_bytes_capitalize(char *result, char *s, Py_ssize_t len);
|
---|
21 | extern void _Py_bytes_swapcase(char *result, char *s, Py_ssize_t len);
|
---|
22 |
|
---|
23 | /* Shared __doc__ strings. */
|
---|
24 | extern const char _Py_isspace__doc__[];
|
---|
25 | extern const char _Py_isalpha__doc__[];
|
---|
26 | extern const char _Py_isalnum__doc__[];
|
---|
27 | extern const char _Py_isdigit__doc__[];
|
---|
28 | extern const char _Py_islower__doc__[];
|
---|
29 | extern const char _Py_isupper__doc__[];
|
---|
30 | extern const char _Py_istitle__doc__[];
|
---|
31 | extern const char _Py_lower__doc__[];
|
---|
32 | extern const char _Py_upper__doc__[];
|
---|
33 | extern const char _Py_title__doc__[];
|
---|
34 | extern const char _Py_capitalize__doc__[];
|
---|
35 | extern const char _Py_swapcase__doc__[];
|
---|
36 |
|
---|
37 | /* These are left in for backward compatibility and will be removed
|
---|
38 | in 2.8/3.2 */
|
---|
39 | #define ISLOWER(c) Py_ISLOWER(c)
|
---|
40 | #define ISUPPER(c) Py_ISUPPER(c)
|
---|
41 | #define ISALPHA(c) Py_ISALPHA(c)
|
---|
42 | #define ISDIGIT(c) Py_ISDIGIT(c)
|
---|
43 | #define ISXDIGIT(c) Py_ISXDIGIT(c)
|
---|
44 | #define ISALNUM(c) Py_ISALNUM(c)
|
---|
45 | #define ISSPACE(c) Py_ISSPACE(c)
|
---|
46 |
|
---|
47 | #undef islower
|
---|
48 | #define islower(c) undefined_islower(c)
|
---|
49 | #undef isupper
|
---|
50 | #define isupper(c) undefined_isupper(c)
|
---|
51 | #undef isalpha
|
---|
52 | #define isalpha(c) undefined_isalpha(c)
|
---|
53 | #undef isdigit
|
---|
54 | #define isdigit(c) undefined_isdigit(c)
|
---|
55 | #undef isxdigit
|
---|
56 | #define isxdigit(c) undefined_isxdigit(c)
|
---|
57 | #undef isalnum
|
---|
58 | #define isalnum(c) undefined_isalnum(c)
|
---|
59 | #undef isspace
|
---|
60 | #define isspace(c) undefined_isspace(c)
|
---|
61 |
|
---|
62 | /* These are left in for backward compatibility and will be removed
|
---|
63 | in 2.8/3.2 */
|
---|
64 | #define TOLOWER(c) Py_TOLOWER(c)
|
---|
65 | #define TOUPPER(c) Py_TOUPPER(c)
|
---|
66 |
|
---|
67 | #undef tolower
|
---|
68 | #define tolower(c) undefined_tolower(c)
|
---|
69 | #undef toupper
|
---|
70 | #define toupper(c) undefined_toupper(c)
|
---|
71 |
|
---|
72 | /* this is needed because some docs are shared from the .o, not static */
|
---|
73 | #define PyDoc_STRVAR_shared(name,str) const char name[] = PyDoc_STR(str)
|
---|
74 |
|
---|
75 | #endif /* !Py_BYTES_CTYPE_H */
|
---|