symbian-qemu-0.9.1-12/python-2.6.1/Include/bytes_methods.h
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     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 #define FLAG_LOWER  0x01
       
    38 #define FLAG_UPPER  0x02
       
    39 #define FLAG_ALPHA  (FLAG_LOWER|FLAG_UPPER)
       
    40 #define FLAG_DIGIT  0x04
       
    41 #define FLAG_ALNUM  (FLAG_ALPHA|FLAG_DIGIT)
       
    42 #define FLAG_SPACE  0x08
       
    43 #define FLAG_XDIGIT 0x10
       
    44 
       
    45 extern const unsigned int _Py_ctype_table[256];
       
    46 
       
    47 #define ISLOWER(c) (_Py_ctype_table[Py_CHARMASK(c)] & FLAG_LOWER)
       
    48 #define ISUPPER(c) (_Py_ctype_table[Py_CHARMASK(c)] & FLAG_UPPER)
       
    49 #define ISALPHA(c) (_Py_ctype_table[Py_CHARMASK(c)] & FLAG_ALPHA)
       
    50 #define ISDIGIT(c) (_Py_ctype_table[Py_CHARMASK(c)] & FLAG_DIGIT)
       
    51 #define ISXDIGIT(c) (_Py_ctype_table[Py_CHARMASK(c)] & FLAG_XDIGIT)
       
    52 #define ISALNUM(c) (_Py_ctype_table[Py_CHARMASK(c)] & FLAG_ALNUM)
       
    53 #define ISSPACE(c) (_Py_ctype_table[Py_CHARMASK(c)] & FLAG_SPACE)
       
    54 
       
    55 #undef islower
       
    56 #define islower(c) undefined_islower(c)
       
    57 #undef isupper
       
    58 #define isupper(c) undefined_isupper(c)
       
    59 #undef isalpha
       
    60 #define isalpha(c) undefined_isalpha(c)
       
    61 #undef isdigit
       
    62 #define isdigit(c) undefined_isdigit(c)
       
    63 #undef isxdigit
       
    64 #define isxdigit(c) undefined_isxdigit(c)
       
    65 #undef isalnum
       
    66 #define isalnum(c) undefined_isalnum(c)
       
    67 #undef isspace
       
    68 #define isspace(c) undefined_isspace(c)
       
    69 
       
    70 extern const unsigned char _Py_ctype_tolower[256];
       
    71 extern const unsigned char _Py_ctype_toupper[256];
       
    72 
       
    73 #define TOLOWER(c) (_Py_ctype_tolower[Py_CHARMASK(c)])
       
    74 #define TOUPPER(c) (_Py_ctype_toupper[Py_CHARMASK(c)])
       
    75 
       
    76 #undef tolower
       
    77 #define tolower(c) undefined_tolower(c)
       
    78 #undef toupper
       
    79 #define toupper(c) undefined_toupper(c)
       
    80 
       
    81 /* this is needed because some docs are shared from the .o, not static */
       
    82 #define PyDoc_STRVAR_shared(name,str) const char name[] = PyDoc_STR(str)
       
    83 
       
    84 #endif /* !Py_BYTES_CTYPE_H */