summaryrefslogtreecommitdiffstats
path: root/Python/formatter_unicode.c
Commit message (Collapse)AuthorAgeFilesLines
* Remove now unused IntOrLongToString typeVictor Stinner2012-08-091-3/+0
|
* Comment out a dead increment.Brett Cannon2012-06-251-1/+1
| | | | Found by Clang's static analyzer.
* format_obj: make it staticdoko@ubuntu.com2012-06-211-1/+1
|
* Optimize _PyUnicode_FastCopyCharacters() when maxchar(from) > maxchar(to)Victor Stinner2012-06-161-2/+4
|
* Issue #14744: Use the new _PyUnicodeWriter internal API to speed up str%args ↵Victor Stinner2012-05-291-194/+218
| | | | | | | | | | | | | | | | | and str.format(args) * Formatting string, int, float and complex use the _PyUnicodeWriter API. It avoids a temporary buffer in most cases. * Add _PyUnicodeWriter_WriteStr() to restore the PyAccu optimization: just keep a reference to the string if the output is only composed of one string * Disable overallocation when formatting the last argument of str%args and str.format(args) * Overallocation allocates at least 100 characters: add min_length attribute to the _PyUnicodeWriter structure * Add new private functions: _PyUnicode_FastCopyCharacters(), _PyUnicode_FastFill() and _PyUnicode_FromASCII() The speed up is around 20% in average.
* Close #14648: Compute correctly maxchar in str.format() for substrinVictor Stinner2012-04-231-4/+2
|
* inherit maxchar of field value where needed (closes #14648)Benjamin Peterson2012-04-231-0/+3
|
* Issue #13706: Fix format(float, "n") for locale with non-ASCII decimal point ↵Victor Stinner2012-02-241-9/+6
| | | | (e.g. ps_aF)
* Issue #13706: Fix format(int, "n") for locale with non-ASCII thousands separatorVictor Stinner2012-02-231-53/+89
| | | | | | | | | | | * Decode thousands separator and decimal point using PyUnicode_DecodeLocale() (from the locale encoding), instead of decoding them implicitly from latin1 * Remove _PyUnicode_InsertThousandsGroupingLocale(), it was not used * Change _PyUnicode_InsertThousandsGrouping() API to return the maximum character if unicode is NULL * Replace MIN/MAX macros by Py_MIN/Py_MAX * stringlib/undef.h undefines STRINGLIB_IS_UNICODE * stringlib/localeutil.h only supports Unicode
* Issue #13706: Add assertions to detect bugs earlierVictor Stinner2012-01-311-3/+9
|
* Silence last compilation warning.Amaury Forgeot d'Arc2012-01-231-1/+1
|
* Fix compilation warnings (seen on win32 buildbot)Amaury Forgeot d'Arc2012-01-231-4/+4
|
* Issue #13706: Support non-ASCII fill charactersVictor Stinner2012-01-211-15/+19
|
* Improve exception text. Closes issue 13811.Eric V. Smith2012-01-201-2/+2
|
* remove some usage of Py_UNICODE_TOUPPER/LOWERBenjamin Peterson2012-01-121-11/+16
|
* Add a new PyUnicode_Fill() functionVictor Stinner2012-01-031-15/+6
| | | | | It is faster than the unicode_fill() function which was implemented in formatter_unicode.c.
* Issue #9530: Fix undefined behaviour due to signed overflow in ↵Mark Dickinson2011-12-011-9/+7
| | | | Python/formatter_unicode.c.
* Fix misuse of PyUnicode_GET_SIZE, use PyUnicode_GET_LENGTH insteadVictor Stinner2011-10-111-1/+1
|
* Change PyUnicode_KIND to 1,2,4. Drop _KIND_SIZE and _CHARACTER_SIZE.Martin v. Löwis2011-10-071-2/+2
|
* Don't check for the maximum character when copying from unicodeobject.cVictor Stinner2011-10-051-9/+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-2/+2
| | | | | | 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.
* fill_number() and format_string_internal() check for ↵Victor Stinner2011-09-281-3/+8
| | | | PyUnicode_CopyCharacters() failure
* fill_number() ensures that the 'digits' string is readyVictor Stinner2011-09-281-1/+4
|
* fill_char() can now propagate an errorVictor Stinner2011-09-281-25/+47
|
* Implement PEP 393.Martin v. Löwis2011-09-281-6/+1439
|
* Remove the uses of WITHOUT_COMPLEX introduced in r75471Mark Dickinson2009-10-181-2/+0
|
* Merged revisions 75440 via svnmerge fromMark Dickinson2009-10-151-0/+2
| | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/trunk ........ r75440 | mark.dickinson | 2009-10-15 18:45:39 +0100 (Thu, 15 Oct 2009) | 1 line Allow core Python build to succeed under WITHOUT_COMPLEX. The module build stage still fails. ........
* Issue #1588: Add complex.__format__.Eric Smith2009-04-301-3/+4
|
* Refactor and clean up str.format() code (and helpers) in advance of ↵Eric Smith2008-05-301-5/+5
| | | | optimizations.
* Implementation of PEP 3101, Advanced String Formatting.Eric Smith2007-08-251-0/+13
Known issues: The string.Formatter class, as discussed in the PEP, is incomplete. Error handling needs to conform to the PEP. Need to fix this warning that I introduced in Python/formatter_unicode.c: Objects/stringlib/unicodedefs.h:26: warning: `STRINGLIB_CMP' defined but not used Need to make sure sign formatting is correct, more tests needed. Need to remove '()' sign formatting, left over from an earlier version of the PEP.