| 
									
										
										
											
												Backport of PEP 3101, Advanced String Formatting, from py3k.
Highlights:
 - Adding PyObject_Format.
 - Adding string.Format class.
 - Adding __format__ for str, unicode, int, long, float, datetime.
 - Adding builtin format.
 - Adding ''.format and u''.format.
 - str/unicode fixups for formatters.
The files in Objects/stringlib that implement PEP 3101 (stringdefs.h,
unicodedefs.h, formatter.h, string_format.h) are identical in trunk
and py3k.  Any changes from here on should be made to trunk, and
changes will propogate to py3k).
											
										 
											2008-02-17 19:46:49 +00:00
										 |  |  | /* Implements the unicode (as opposed to string) version of the
 | 
					
						
							|  |  |  |    built-in formatter for unicode.  That is, unicode.__format__(). */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include "Python.h"
 | 
					
						
							|  |  |  | #include "../Objects/stringlib/unicodedefs.h"
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-05-30 18:10:04 +00:00
										 |  |  | #define FORMAT_STRING _PyUnicode_FormatAdvanced
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
											
												Backport of PEP 3101, Advanced String Formatting, from py3k.
Highlights:
 - Adding PyObject_Format.
 - Adding string.Format class.
 - Adding __format__ for str, unicode, int, long, float, datetime.
 - Adding builtin format.
 - Adding ''.format and u''.format.
 - str/unicode fixups for formatters.
The files in Objects/stringlib that implement PEP 3101 (stringdefs.h,
unicodedefs.h, formatter.h, string_format.h) are identical in trunk
and py3k.  Any changes from here on should be made to trunk, and
changes will propogate to py3k).
											
										 
											2008-02-17 19:46:49 +00:00
										 |  |  | /* don't define FORMAT_LONG and FORMAT_FLOAT, since we can live
 | 
					
						
							|  |  |  |    with only the string versions of those.  The builtin format() | 
					
						
							|  |  |  |    will convert them to unicode. */ | 
					
						
							| 
									
										
										
										
											2008-05-30 18:10:04 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
											
												Backport of PEP 3101, Advanced String Formatting, from py3k.
Highlights:
 - Adding PyObject_Format.
 - Adding string.Format class.
 - Adding __format__ for str, unicode, int, long, float, datetime.
 - Adding builtin format.
 - Adding ''.format and u''.format.
 - str/unicode fixups for formatters.
The files in Objects/stringlib that implement PEP 3101 (stringdefs.h,
unicodedefs.h, formatter.h, string_format.h) are identical in trunk
and py3k.  Any changes from here on should be made to trunk, and
changes will propogate to py3k).
											
										 
											2008-02-17 19:46:49 +00:00
										 |  |  | #include "../Objects/stringlib/formatter.h"
 |