diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2010-05-09 14:46:46 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2010-05-09 14:46:46 (GMT) |
commit | c83ea137d7e717f764e2f31fc2544f522de7d857 (patch) | |
tree | ccfdacfdcdc4ed68e56324a07b6f25ab5327bdcd /Modules/unicodedata.c | |
parent | 368ede83d9c96004dc5c489511936a588537f410 (diff) | |
download | cpython-c83ea137d7e717f764e2f31fc2544f522de7d857.zip cpython-c83ea137d7e717f764e2f31fc2544f522de7d857.tar.gz cpython-c83ea137d7e717f764e2f31fc2544f522de7d857.tar.bz2 |
Untabify C files. Will watch buildbots.
Diffstat (limited to 'Modules/unicodedata.c')
-rw-r--r-- | Modules/unicodedata.c | 266 |
1 files changed, 133 insertions, 133 deletions
diff --git a/Modules/unicodedata.c b/Modules/unicodedata.c index ede57cb..77f3637 100644 --- a/Modules/unicodedata.c +++ b/Modules/unicodedata.c @@ -19,14 +19,14 @@ /* character properties */ typedef struct { - const unsigned char category; /* index into - _PyUnicode_CategoryNames */ - const unsigned char combining; /* combining class value 0 - 255 */ - const unsigned char bidirectional; /* index into - _PyUnicode_BidirectionalNames */ - const unsigned char mirrored; /* true if mirrored in bidir mode */ - const unsigned char east_asian_width; /* index into - _PyUnicode_EastAsianWidth */ + const unsigned char category; /* index into + _PyUnicode_CategoryNames */ + const unsigned char combining; /* combining class value 0 - 255 */ + const unsigned char bidirectional; /* index into + _PyUnicode_BidirectionalNames */ + const unsigned char mirrored; /* true if mirrored in bidir mode */ + const unsigned char east_asian_width; /* index into + _PyUnicode_EastAsianWidth */ const unsigned char normalization_quick_check; /* see is_normalized() */ } _PyUnicode_DatabaseRecord; @@ -67,7 +67,7 @@ typedef struct previous_version { #define get_old_record(self, v) ((((PreviousDBVersion*)self)->getrecord)(v)) static PyMemberDef DB_members[] = { - {"unidata_version", T_STRING, offsetof(PreviousDBVersion, name), READONLY}, + {"unidata_version", T_STRING, offsetof(PreviousDBVersion, name), READONLY}, {NULL} }; @@ -78,14 +78,14 @@ static PyObject* new_previous_version(const char*name, const change_record* (*getrecord)(Py_UCS4), Py_UCS4 (*normalization)(Py_UCS4)) { - PreviousDBVersion *self; - self = PyObject_New(PreviousDBVersion, &UCD_Type); - if (self == NULL) - return NULL; - self->name = name; - self->getrecord = getrecord; + PreviousDBVersion *self; + self = PyObject_New(PreviousDBVersion, &UCD_Type); + if (self == NULL) + return NULL; + self->name = name; + self->getrecord = getrecord; self->normalization = normalization; - return (PyObject*)self; + return (PyObject*)self; } @@ -94,12 +94,12 @@ static Py_UCS4 getuchar(PyUnicodeObject *obj) Py_UNICODE *v = PyUnicode_AS_UNICODE(obj); if (PyUnicode_GET_SIZE(obj) == 1) - return *v; + return *v; #ifndef Py_UNICODE_WIDE else if ((PyUnicode_GET_SIZE(obj) == 2) && (0xD800 <= v[0] && v[0] <= 0xDBFF) && (0xDC00 <= v[1] && v[1] <= 0xDFFF)) - return (((v[0] & 0x3FF)<<10) | (v[1] & 0x3FF)) + 0x10000; + return (((v[0] & 0x3FF)<<10) | (v[1] & 0x3FF)) + 0x10000; #endif PyErr_SetString(PyExc_TypeError, "need a single Unicode character as parameter"); @@ -136,7 +136,7 @@ unicodedata_decimal(PyObject *self, PyObject *args) /* unassigned */ have_old = 1; rc = -1; - } + } else if (old->decimal_changed != 0xFF) { have_old = 1; rc = old->decimal_changed; @@ -146,15 +146,15 @@ unicodedata_decimal(PyObject *self, PyObject *args) if (!have_old) rc = Py_UNICODE_TODECIMAL(c); if (rc < 0) { - if (defobj == NULL) { - PyErr_SetString(PyExc_ValueError, - "not a decimal"); + if (defobj == NULL) { + PyErr_SetString(PyExc_ValueError, + "not a decimal"); return NULL; - } - else { - Py_INCREF(defobj); - return defobj; - } + } + else { + Py_INCREF(defobj); + return defobj; + } } return PyInt_FromLong(rc); } @@ -181,14 +181,14 @@ unicodedata_digit(PyObject *self, PyObject *args) return NULL; rc = Py_UNICODE_TODIGIT(c); if (rc < 0) { - if (defobj == NULL) { - PyErr_SetString(PyExc_ValueError, "not a digit"); + if (defobj == NULL) { + PyErr_SetString(PyExc_ValueError, "not a digit"); return NULL; - } - else { - Py_INCREF(defobj); - return defobj; - } + } + else { + Py_INCREF(defobj); + return defobj; + } } return PyInt_FromLong(rc); } @@ -221,7 +221,7 @@ unicodedata_numeric(PyObject *self, PyObject *args) /* unassigned */ have_old = 1; rc = -1.0; - } + } else if (old->decimal_changed != 0xFF) { have_old = 1; rc = old->decimal_changed; @@ -231,14 +231,14 @@ unicodedata_numeric(PyObject *self, PyObject *args) if (!have_old) rc = Py_UNICODE_TONUMERIC(c); if (rc == -1.0) { - if (defobj == NULL) { - PyErr_SetString(PyExc_ValueError, "not a numeric character"); - return NULL; - } - else { - Py_INCREF(defobj); - return defobj; - } + if (defobj == NULL) { + PyErr_SetString(PyExc_ValueError, "not a numeric character"); + return NULL; + } + else { + Py_INCREF(defobj); + return defobj; + } } return PyFloat_FromDouble(rc); } @@ -257,8 +257,8 @@ unicodedata_category(PyObject *self, PyObject *args) Py_UCS4 c; if (!PyArg_ParseTuple(args, "O!:category", - &PyUnicode_Type, &v)) - return NULL; + &PyUnicode_Type, &v)) + return NULL; c = getuchar(v); if (c == (Py_UCS4)-1) return NULL; @@ -286,8 +286,8 @@ unicodedata_bidirectional(PyObject *self, PyObject *args) Py_UCS4 c; if (!PyArg_ParseTuple(args, "O!:bidirectional", - &PyUnicode_Type, &v)) - return NULL; + &PyUnicode_Type, &v)) + return NULL; c = getuchar(v); if (c == (Py_UCS4)-1) return NULL; @@ -317,8 +317,8 @@ unicodedata_combining(PyObject *self, PyObject *args) Py_UCS4 c; if (!PyArg_ParseTuple(args, "O!:combining", - &PyUnicode_Type, &v)) - return NULL; + &PyUnicode_Type, &v)) + return NULL; c = getuchar(v); if (c == (Py_UCS4)-1) return NULL; @@ -346,8 +346,8 @@ unicodedata_mirrored(PyObject *self, PyObject *args) Py_UCS4 c; if (!PyArg_ParseTuple(args, "O!:mirrored", - &PyUnicode_Type, &v)) - return NULL; + &PyUnicode_Type, &v)) + return NULL; c = getuchar(v); if (c == (Py_UCS4)-1) return NULL; @@ -376,8 +376,8 @@ unicodedata_east_asian_width(PyObject *self, PyObject *args) Py_UCS4 c; if (!PyArg_ParseTuple(args, "O!:east_asian_width", - &PyUnicode_Type, &v)) - return NULL; + &PyUnicode_Type, &v)) + return NULL; c = getuchar(v); if (c == (Py_UCS4)-1) return NULL; @@ -407,8 +407,8 @@ unicodedata_decomposition(PyObject *self, PyObject *args) Py_UCS4 c; if (!PyArg_ParseTuple(args, "O!:decomposition", - &PyUnicode_Type, &v)) - return NULL; + &PyUnicode_Type, &v)) + return NULL; c = getuchar(v); if (c == (Py_UCS4)-1) return NULL; @@ -454,7 +454,7 @@ unicodedata_decomposition(PyObject *self, PyObject *args) decomp_data[++index]); i += strlen(decomp + i); } - + decomp[i] = '\0'; return PyString_FromString(decomp); @@ -474,7 +474,7 @@ get_decomp_record(PyObject *self, Py_UCS4 code, int *index, int *prefix, int *co *index = decomp_index2[(*index<<DECOMP_SHIFT)+ (code&((1<<DECOMP_SHIFT)-1))]; } - + /* high byte is number of hex bytes (usually one or two), low byte is prefix code (from*/ *count = decomp_data[*index] >> 8; @@ -499,11 +499,11 @@ nfd_nfkd(PyObject *self, PyObject *input, int k) PyObject *result; Py_UNICODE *i, *end, *o; /* Longest decomposition in Unicode 3.2: U+FDFA */ - Py_UNICODE stack[20]; + Py_UNICODE stack[20]; Py_ssize_t space, isize; int index, prefix, count, stackptr; unsigned char prev, cur; - + stackptr = 0; isize = PyUnicode_GET_SIZE(input); /* Overallocate atmost 10 characters. */ @@ -640,12 +640,12 @@ nfc_nfkc(PyObject *self, PyObject *input, int k) i = PyUnicode_AS_UNICODE(result); end = i + PyUnicode_GET_SIZE(result); o = PyUnicode_AS_UNICODE(result); - + again: while (i < end) { for (index = 0; index < cskipped; index++) { if (skipped[index] == i) { - /* *i character is skipped. + /* *i character is skipped. Remove from list. */ skipped[index] = skipped[cskipped-1]; cskipped--; @@ -656,7 +656,7 @@ nfc_nfkc(PyObject *self, PyObject *input, int k) /* Hangul Composition. We don't need to check for <LV,T> pairs, since we always have decomposed data. */ if (LBase <= *i && *i < (LBase+LCount) && - i + 1 < end && + i + 1 < end && VBase <= i[1] && i[1] <= (VBase+VCount)) { int LIndex, VIndex; LIndex = i[0] - LBase; @@ -705,7 +705,7 @@ nfc_nfkc(PyObject *self, PyObject *input, int k) (index&((1<<COMP_SHIFT)-1))]; if (code == 0) goto not_combinable; - + /* Replace the original character. */ *i = code; /* Mark the second character unused. */ @@ -889,29 +889,29 @@ _getucname(PyObject *self, Py_UCS4 code, char* buffer, int buflen) if (old->category_changed == 0) { /* unassigned */ return 0; - } + } } if (SBase <= code && code < SBase+SCount) { - /* Hangul syllable. */ - int SIndex = code - SBase; - int L = SIndex / NCount; - int V = (SIndex % NCount) / TCount; - int T = SIndex % TCount; - - if (buflen < 27) - /* Worst case: HANGUL SYLLABLE <10chars>. */ - return 0; - strcpy(buffer, "HANGUL SYLLABLE "); - buffer += 16; - strcpy(buffer, hangul_syllables[L][0]); - buffer += strlen(hangul_syllables[L][0]); - strcpy(buffer, hangul_syllables[V][1]); - buffer += strlen(hangul_syllables[V][1]); - strcpy(buffer, hangul_syllables[T][2]); - buffer += strlen(hangul_syllables[T][2]); - *buffer = '\0'; - return 1; + /* Hangul syllable. */ + int SIndex = code - SBase; + int L = SIndex / NCount; + int V = (SIndex % NCount) / TCount; + int T = SIndex % TCount; + + if (buflen < 27) + /* Worst case: HANGUL SYLLABLE <10chars>. */ + return 0; + strcpy(buffer, "HANGUL SYLLABLE "); + buffer += 16; + strcpy(buffer, hangul_syllables[L][0]); + buffer += strlen(hangul_syllables[L][0]); + strcpy(buffer, hangul_syllables[V][1]); + buffer += strlen(hangul_syllables[V][1]); + strcpy(buffer, hangul_syllables[T][2]); + buffer += strlen(hangul_syllables[T][2]); + *buffer = '\0'; + return 1; } if (is_unified_ideograph(code)) { @@ -978,23 +978,23 @@ _cmpname(PyObject *self, int code, const char* name, int namelen) return buffer[namelen] == '\0'; } -static void +static void find_syllable(const char *str, int *len, int *pos, int count, int column) { int i, len1; *len = -1; for (i = 0; i < count; i++) { - char *s = hangul_syllables[i][column]; - len1 = strlen(s); - if (len1 <= *len) - continue; - if (strncmp(str, s, len1) == 0) { - *len = len1; - *pos = i; - } + char *s = hangul_syllables[i][column]; + len1 = strlen(s); + if (len1 <= *len) + continue; + if (strncmp(str, s, len1) == 0) { + *len = len1; + *pos = i; + } } if (*len == -1) { - *len = 0; + *len = 0; } } @@ -1007,18 +1007,18 @@ _getcode(PyObject* self, const char* name, int namelen, Py_UCS4* code) /* Check for hangul syllables. */ if (strncmp(name, "HANGUL SYLLABLE ", 16) == 0) { - int len, L = -1, V = -1, T = -1; - const char *pos = name + 16; - find_syllable(pos, &len, &L, LCount, 0); - pos += len; - find_syllable(pos, &len, &V, VCount, 1); - pos += len; - find_syllable(pos, &len, &T, TCount, 2); - pos += len; - if (L != -1 && V != -1 && T != -1 && pos-name == namelen) { - *code = SBase + (L*VCount+V)*TCount + T; - return 1; - } + int len, L = -1, V = -1, T = -1; + const char *pos = name + 16; + find_syllable(pos, &len, &L, LCount, 0); + pos += len; + find_syllable(pos, &len, &V, VCount, 1); + pos += len; + find_syllable(pos, &len, &T, TCount, 2); + pos += len; + if (L != -1 && V != -1 && T != -1 && pos-name == namelen) { + *code = SBase + (L*VCount+V)*TCount + T; + return 1; + } /* Otherwise, it's an illegal syllable name. */ return 0; } @@ -1078,7 +1078,7 @@ _getcode(PyObject* self, const char* name, int namelen, Py_UCS4* code) } } -static const _PyUnicode_Name_CAPI hashAPI = +static const _PyUnicode_Name_CAPI hashAPI = { sizeof(_PyUnicode_Name_CAPI), _getucname, @@ -1110,14 +1110,14 @@ unicodedata_name(PyObject* self, PyObject* args) return NULL; if (!_getucname(self, c, name, sizeof(name))) { - if (defobj == NULL) { - PyErr_SetString(PyExc_ValueError, "no such name"); + if (defobj == NULL) { + PyErr_SetString(PyExc_ValueError, "no such name"); return NULL; - } - else { - Py_INCREF(defobj); - return defobj; - } + } + else { + Py_INCREF(defobj); + return defobj; + } } return Py_BuildValue("s", name); @@ -1155,7 +1155,7 @@ unicodedata_lookup(PyObject* self, PyObject* args) } #endif str[0] = (Py_UNICODE) code; - return PyUnicode_FromUnicode(str, 1); + return PyUnicode_FromUnicode(str, 1); } /* XXX Add doc strings. */ @@ -1180,27 +1180,27 @@ static PyMethodDef unicodedata_functions[] = { {"lookup", unicodedata_lookup, METH_VARARGS, unicodedata_lookup__doc__}, {"normalize", unicodedata_normalize, METH_VARARGS, unicodedata_normalize__doc__}, - {NULL, NULL} /* sentinel */ + {NULL, NULL} /* sentinel */ }; static PyTypeObject UCD_Type = { - /* The ob_type field must be initialized in the module init function - * to be portable to Windows without using C++. */ - PyVarObject_HEAD_INIT(NULL, 0) - "unicodedata.UCD", /*tp_name*/ - sizeof(PreviousDBVersion), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - /* methods */ - (destructor)PyObject_Del, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - 0, /*tp_compare*/ - 0, /*tp_repr*/ - 0, /*tp_as_number*/ - 0, /*tp_as_sequence*/ - 0, /*tp_as_mapping*/ - 0, /*tp_hash*/ + /* The ob_type field must be initialized in the module init function + * to be portable to Windows without using C++. */ + PyVarObject_HEAD_INIT(NULL, 0) + "unicodedata.UCD", /*tp_name*/ + sizeof(PreviousDBVersion), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + /* methods */ + (destructor)PyObject_Del, /*tp_dealloc*/ + 0, /*tp_print*/ + 0, /*tp_getattr*/ + 0, /*tp_setattr*/ + 0, /*tp_compare*/ + 0, /*tp_repr*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + 0, /*tp_hash*/ 0, /*tp_call*/ 0, /*tp_str*/ PyObject_GenericGetAttr,/*tp_getattro*/ @@ -1266,7 +1266,7 @@ initunicodedata(void) PyModule_AddObject(m, "ucnhash_CAPI", v); } -/* +/* Local variables: c-basic-offset: 4 indent-tabs-mode: nil |