cpython/Include
Victor Stinner d3f0882dfb Issue #14744: Use the new _PyUnicodeWriter internal API to speed up str%args 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.
2012-05-29 12:57:52 +02:00
..
Python-ast.h
Python.h Issue #14387: Do not include accu.h from Python.h. 2012-03-22 14:42:18 +01:00
abstract.h Issue #2377: Make importlib the implementation of __import__(). 2012-04-14 14:10:13 -04:00
accu.h Issue #14387 : undefine 'small' so that it doesn't clash with Windows headers. 2012-03-22 23:10:37 +00:00
asdl.h Widen ASDL sequences to Py_ssize_t lengths to better match PEP 353. 2012-05-15 14:45:03 +02:00
ast.h
bitset.h
bltinmodule.h
boolobject.h
bytearrayobject.h
bytes_methods.h
bytesobject.h Simplify and optimize formatlong() 2012-04-27 23:40:13 +02:00
cellobject.h
ceval.h
classobject.h
code.h
codecs.h
compile.h
complexobject.h Issue #14744: Use the new _PyUnicodeWriter internal API to speed up str%args and str.format(args) 2012-05-29 12:57:52 +02:00
datetime.h Issue #13727: Add 3 macros to access PyDateTime_Delta members: 2012-01-17 21:31:50 +01:00
descrobject.h
dictobject.h Account for shared keys in type's __sizeof__ (#13903). 2012-04-24 19:13:57 +02:00
dtoa.h Issue #14521: Make result of float('nan') and float('-nan') more consistent across platforms. Further, don't rely on Py_HUGE_VAL for float('inf'). 2012-04-29 15:31:56 +01:00
dynamic_annotations.h
enumobject.h
errcode.h Issue #12705: Raise SyntaxError when compiling multiple statements as single interactive statement 2012-01-19 01:08:41 -06:00
eval.h
fileobject.h
fileutils.h Issue #14153 Create _Py_device_encoding() to prevent _io from having to import 2012-02-29 18:31:31 -05:00
floatobject.h Issue #14744: Use the new _PyUnicodeWriter internal API to speed up str%args and str.format(args) 2012-05-29 12:57:52 +02:00
frameobject.h perform yield from delegation by repeating YIELD_FROM opcode (closes #14230) 2012-03-15 15:37:39 -05:00
funcobject.h
genobject.h perform yield from delegation by repeating YIELD_FROM opcode (closes #14230) 2012-03-15 15:37:39 -05:00
graminit.h
grammar.h
import.h Issue #2377: Make importlib the implementation of __import__(). 2012-04-14 14:10:13 -04:00
intrcheck.h
iterobject.h Rename _PyIter_GetBuiltin to _PyObject_GetBuiltin, and do not include it in the stable ABI. 2012-04-05 00:04:20 +02:00
listobject.h
longintrepr.h Issue #7652: Integrate the decimal floating point libmpdec library to speed 2012-03-21 18:25:23 +01:00
longobject.h Issue #14744: Use the new _PyUnicodeWriter internal API to speed up str%args and str.format(args) 2012-05-29 12:57:52 +02:00
marshal.h
memoryobject.h Issue #14930: Make memoryview objects weakrefable. 2012-05-28 21:35:09 +01:00
metagrammar.h
methodobject.h Reformat by replacing tabs with 4-spaces. Makes the code more PEP-7 compliant 2012-04-05 06:42:48 +03:00
modsupport.h
moduleobject.h
node.h move LINENO define to where it actually belongs 2012-01-16 17:29:05 -05:00
object.h Implement PEP 412: Key-sharing dictionaries (closes #13903) 2012-04-23 11:24:50 -04:00
objimpl.h
opcode.h
osdefs.h
parsetok.h
patchlevel.h Post-3.3a3 bump. 2012-05-06 11:20:09 +02:00
pgen.h
pgenheaders.h
py_curses.h
pyarena.h
pyatomic.h
pycapsule.h
pyctype.h
pydebug.h Merge 3.2: Issue #13703 plus some related test suite fixes. 2012-02-21 00:33:36 +01:00
pyerrors.h PEP 415: Implement suppression of __context__ display with an exception attribute 2012-05-14 22:09:31 -07:00
pyexpat.h
pyfpe.h
pygetopt.h Fix test failure in test_cmd_line by initializing the hash secret at the earliest point. 2012-02-21 19:03:47 +01:00
pymacconfig.h
pymacro.h
pymath.h
pymem.h
pyport.h Issue #13889: Merge fix from 3.2. 2012-04-15 15:12:37 +01:00
pystate.h Issues #13959, 14647: Re-implement imp.reload() in Lib/imp.py. 2012-04-29 14:38:11 -04:00
pystrcmp.h
pystrtod.h
pythonrun.h Issue #2377: Make importlib the implementation of __import__(). 2012-04-14 14:10:13 -04:00
pythread.h
pytime.h Issue #14127: Add ns= parameter to utime, futimes, and lutimes. 2012-05-03 00:30:07 -07:00
rangeobject.h
setobject.h
sliceobject.h
structmember.h s/tabs/spaces, and clean trailing whitespace 2012-05-23 07:09:08 +03:00
structseq.h
symtable.h
sysmodule.h
token.h Issue #13629: Renumber the tokens in token.h to match the _PyParser_TokenNames indexes. 2012-01-15 19:15:36 -06:00
traceback.h
tupleobject.h
typeslots.h
ucnhash.h
unicodeobject.h Issue #14744: Use the new _PyUnicodeWriter internal API to speed up str%args and str.format(args) 2012-05-29 12:57:52 +02:00
warnings.h
weakrefobject.h