summaryrefslogtreecommitdiffstats
path: root/Include/unicodeobject.h
Commit message (Collapse)AuthorAgeFilesLines
* backout 7876cd49300d: Move PyUnicode_WCHAR_KIND outside PyUnicode_Kind enumVictor Stinner2011-12-191-4/+3
|
* Move PyUnicode_WCHAR_KIND outside PyUnicode_Kind enumVictor Stinner2011-12-171-3/+4
|
* Issue #13560: Locale codec functions use the classic "errors" parameter,Victor Stinner2011-12-171-3/+3
| | | | | | instead of surrogateescape So it would be possible to support more error handlers later.
* Issue #13560: Add PyUnicode_EncodeLocale()Victor Stinner2011-12-171-1/+11
| | | | | | * Use PyUnicode_EncodeLocale() in time.strftime() if wcsftime() is not available * Document my last changes in Misc/NEWS
* Add PyUnicode_DecodeLocaleAndSize() and PyUnicode_DecodeLocale()Victor Stinner2011-12-161-0/+22
| | | | | | | | | | | * PyUnicode_DecodeLocaleAndSize() and PyUnicode_DecodeLocale() decode a string from the current locale encoding * _Py_char2wchar() writes an "error code" in the size argument to indicate if the function failed because of memory allocation failure or because of a decoding error. The function doesn't write the error message directly to stderr. * Fix time.strftime() (if wcsftime() is missing): decode strftime() result from the current locale encoding, not from the filesystem encoding.
* PyUnicode_Resize(): warn about canonical representationVictor Stinner2011-12-121-1/+4
| | | | Call also directly unicode_resize() in unicodeobject.c
* Fix PyUnicode_Resize() for compact string: leave the string unchanged on errorVictor Stinner2011-12-121-8/+5
| | | | Fix also PyUnicode_Resize() doc
* Make PyUnicode_Copy() private => _PyUnicode_Copy()Victor Stinner2011-12-121-1/+3
| | | | | | Undocument the function. Make also decode_utf8_errors() as private (static).
* resize_copy() now supports legacy ready stringsVictor Stinner2011-12-111-0/+4
|
* PyUnicode_IS_ASCII() macro ensures that the string is readyVictor Stinner2011-12-121-5/+7
| | | | It has no sense to check if a not ready string is ASCII or not.
* Py_UNICODE_HIGH_SURROGATE() and Py_UNICODE_LOW_SURROGATE() macrosVictor Stinner2011-11-291-0/+4
| | | | And use surrogates macros everywhere in unicodeobject.c
* PyUnicode_GET_SIZE() checks that PyUnicode_AsUnicode() succeedVictor Stinner2011-11-211-6/+7
| | | | using an assertion
* _PyUnicode_CheckConsistency() also checks maxchar maximum value,Victor Stinner2011-11-201-5/+8
| | | | not only its minimum value
* Fix PyUnicode_CopyCharacters() docVictor Stinner2011-11-201-2/+1
|
* Ensure that Py_UCS4 is 32 bits and Py_UCS2 is 16 bitsVictor Stinner2011-11-201-2/+7
|
* Fix misused of "PyUnicodeObject" structure name in unicodeobject.hVictor Stinner2011-11-161-2/+2
|
* Port encoders from Py_UNICODE API to unicode object API.Martin v. Löwis2011-11-101-0/+16
|
* Make _PyUnicode_FromId return borrowed references.Martin v. Löwis2011-11-071-1/+1
| | | | http://mail.python.org/pipermail/python-dev/2011-November/114347.html
* Fix gdb/libpython.py for not ready Unicode stringsVictor Stinner2011-11-041-3/+5
| | | | | _PyUnicode_CheckConsistency() checks also hash and length value for not ready Unicode strings.
* Replace PyUnicodeObject type by PyObjectVictor Stinner2011-11-031-2/+1
| | | | | * _PyUnicode_CheckConsistency() now takes a PyObject* instead of void* * Remove now useless casts to PyObject*
* Port UCS1 and charmap codecs to new API.Martin v. Löwis2011-11-021-0/+6
|
* Drop Py_UCS4_ functions. Closes #13246.Martin v. Löwis2011-10-311-37/+0
|
* Replace PyUnicodeObject* by PyObject* where it was irrevelantVictor Stinner2011-10-231-1/+1
| | | | | | A Unicode string can now be a PyASCIIObject, PyCompactUnicodeObject or PyUnicodeObject. Aliasing a PyASCIIObject* or PyCompactUnicodeObject* to PyUnicodeObject* is wrong
* Simplify _PyUnicode_COMPACT_DATA() macroVictor Stinner2011-10-181-1/+1
|
* Issue #12281: Rewrite the MBCS codec to handle correctly replace and ignoreVictor Stinner2011-10-181-1/+15
| | | | | error handlers on all Windows versions. The MBCS codec is now supporting all error handlers, instead of only replace to encode and ignore to decode.
* Rename _Py_identifier to _Py_IDENTIFIER.Martin v. Löwis2011-10-141-2/+2
|
* Simplify PyUnicode_MAX_CHAR_VALUEVictor Stinner2011-10-121-6/+5
| | | | | | | Use PyUnicode_IS_ASCII instead of PyUnicode_IS_COMPACT_ASCII, so the following test can be removed: PyUnicode_DATA(op) == (((PyCompactUnicodeObject *)(op))->utf8)
* Drop extra semicolon.Martin v. Löwis2011-10-091-1/+1
|
* Add API for static strings, primarily good for identifiers.Martin v. Löwis2011-10-091-0/+34
| | | | Thanks to Konrad Schöbel and Jasper Schulz for helping with the mass-editing.
* Change PyUnicode_KIND to 1,2,4. Drop _KIND_SIZE and _CHARACTER_SIZE.Martin v. Löwis2011-10-071-25/+10
|
* Update C API docs for PEP 393.Georg Brandl2011-10-071-1/+1
|
* Fix PyUnicode_CHARACTER_SIZE and PyUnicode_KIND_SIZEVictor Stinner2011-10-061-2/+2
|
* Fix compilation warnings under 64-bit WindowsAntoine Pitrou2011-10-061-2/+3
|
* Branch mergeÉric Araujo2011-10-061-1/+1
|\
| * Fix typoÉric Araujo2011-10-041-1/+1
| |
* | rephrase PyUnicode_1BYTE_KIND documentationVictor Stinner2011-10-051-6/+7
| |
* | Don't check for the maximum character when copying from unicodeobject.cVictor Stinner2011-10-051-0/+7
| | | | | | | | | | | | | | | | * Create copy_characters() function which doesn't check for the maximum character in release mode * _PyUnicode_CheckConsistency() is no more static to be able to use it in _PyUnicode_FormatAdvanced() (in formatter_unicode.c) * _PyUnicode_CheckConsistency() checks the string hash
* | Add asciilib: similar to ucs1, ucs2 and ucs4 library, but specialized to ASCIIVictor Stinner2011-10-051-0/+1
| | | | | | | | | | | | ucs1, ucs2 and ucs4 libraries have to scan created substring to find the maximum character, whereas it is not need to ASCII strings. Because ASCII strings are common, it is useful to optimize ASCII.
* | Document requierements of Unicode kindsVictor Stinner2011-10-041-4/+20
| |
* | More fixes.Georg Brandl2011-10-051-2/+2
| |
* | Fix a few typos in the unicode header.Georg Brandl2011-10-051-11/+11
| |
* | Fix grammar.Georg Brandl2011-10-051-1/+1
| |
* | Speedup str[a:b] and PyUnicode_FromKindAndDataVictor Stinner2011-10-051-0/+2
|/ | | | | | | | * str[a:b] doesn't scan the string for the maximum character if the string is ascii only * PyUnicode_FromKindAndData() stops if we are sure that we cannot use a shorter character type. For example, _PyUnicode_FromUCS1() stops if we have at least one character in range U+0080-U+00FF
* Complete documentation of compact ASCII stringsVictor Stinner2011-10-031-3/+6
|
* Document utf8_length and wstr_length statesVictor Stinner2011-10-031-7/+12
| | | | Ensure these states with assertions in _PyUnicode_CheckConsistency().
* Unicode: document when the wstr pointer is shared with dataVictor Stinner2011-10-031-1/+7
| | | | Add also related assertions to _PyUnicode_CheckConsistency().
* Improve string forms and PyUnicode_Resize() documentationVictor Stinner2011-10-031-13/+22
| | | | | Remove also the FIXME for resize_copy(): as discussed with Martin, copy the string on resize if the string is not resizable is just fine.
* _PyUnicode_CheckConsistency() checks utf8 field consistencyVictor Stinner2011-10-031-0/+2
|
* PyUnicode_Ready() now sets ascii=1 if maxchar < 128Victor Stinner2011-10-031-16/+25
| | | | | ascii=1 is no more reserved to PyASCIIObject. Use PyUnicode_IS_COMPACT_ASCII(obj) to check if obj is a PyASCIIObject (as before).
* Add _PyUnicode_CheckConsistency() macro to help debuggingVictor Stinner2011-10-031-0/+46
| | | | | | * Document Unicode string states * Use _PyUnicode_CheckConsistency() to ensure that objects are always consistent.