diff Include/stringobject.h @ 46898:206700d749f0 legacy-trunk

Addresses issue 2802: 'n' formatting for integers. Adds 'n' as a format specifier for integers, to mirror the same specifier which is already available for floats. 'n' is the same as 'd', but inserts the current locale-specific thousands grouping. I added this as a stringlib function, but it's only used by str type, not unicode. This is because of an implementation detail in unicode.format(), which does its own str->unicode conversion. But the unicode version will be needed in 3.0, and it may be needed by other code eventually in 2.6 (maybe decimal?), so I left it as a stringlib implementation. As long as the unicode version isn't instantiated, there's no overhead for this.
author Eric Smith <eric@trueblade.com>
date Sun, 11 May 2008 19:52:48 +0000
parents 26384b8180c7
children 04bd3690fb1f
line wrap: on
line diff
--- a/Include/stringobject.h	Sun May 11 19:39:48 2008 +0000
+++ b/Include/stringobject.h	Sun May 11 19:52:48 2008 +0000
@@ -176,7 +176,17 @@
 				   (only possible for 0-terminated
 				   strings) */
     );
-    
+
+/* Using the current locale, insert the thousands grouping
+   into the string pointed to by buffer.  For the argument descriptions,
+   see Objects/stringlib/localeutil.h */
+
+PyAPI_FUNC(int) _PyString_InsertThousandsGrouping(char *buffer,
+						  Py_ssize_t len,
+						  char *plast,
+						  Py_ssize_t buf_size,
+						  Py_ssize_t *count,
+						  int append_zero_char);
 
 #ifdef __cplusplus
 }