Commit 1497d8e3 authored by Georg Brandl's avatar Georg Brandl

Remove last traces of cStringIO.

parent 7aad574f
......@@ -484,7 +484,7 @@ For all other encodings the following :class:`UnicodeReader` and
parameter in their constructor and make sure that the data passes the real
reader or writer encoded as UTF-8::
import csv, codecs, cStringIO
import csv, codecs, io
class UTF8Recoder:
"""
......@@ -524,7 +524,7 @@ reader or writer encoded as UTF-8::
def __init__(self, f, dialect=csv.excel, encoding="utf-8", **kwds):
# Redirect output to a queue
self.queue = cStringIO.StringIO()
self.queue = io.StringIO()
self.writer = csv.writer(self.queue, dialect=dialect, **kwds)
self.stream = f
self.encoder = codecs.getincrementalencoder(encoding)()
......
......@@ -48,7 +48,7 @@ Here are the methods of the :class:`Message` class:
:class:`Generator` instance and use its :meth:`flatten` method directly.
For example::
from cStringIO import StringIO
from io import StringIO
from email.generator import Generator
fp = StringIO()
g = Generator(fp, mangle_from_=False, maxheaderlen=60)
......
......@@ -555,7 +555,7 @@ the referenced object.
Here's a silly example that *might* shed more light::
import pickle
from cStringIO import StringIO
from io import StringIO
src = StringIO()
p = pickle.Pickler(src)
......
#ifndef Py_CSTRINGIO_H
#define Py_CSTRINGIO_H
#ifdef __cplusplus
extern "C" {
#endif
/*
This header provides access to cStringIO objects from C.
Functions are provided for calling cStringIO objects and
macros are provided for testing whether you have cStringIO
objects.
Before calling any of the functions or macros, you must initialize
the routines with:
PycString_IMPORT
This would typically be done in your init function.
*/
#define PycString_IMPORT \
PycStringIO = (struct PycStringIO_CAPI*)PyCObject_Import("cStringIO", \
"cStringIO_CAPI")
/* Basic functions to manipulate cStringIO objects from C */
static struct PycStringIO_CAPI {
/* Read a string from an input object. If the last argument
is -1, the remainder will be read.
*/
int(*cread)(PyObject *, char **, Py_ssize_t);
/* Read a line from an input object. Returns the length of the read
line as an int and a pointer inside the object buffer as char** (so
the caller doesn't have to provide its own buffer as destination).
*/
int(*creadline)(PyObject *, char **);
/* Write a string to an output object*/
int(*cwrite)(PyObject *, const char *, Py_ssize_t);
/* Get the output object as a Python string (returns new reference). */
PyObject *(*cgetvalue)(PyObject *);
/* Create a new output object */
PyObject *(*NewOutput)(int);
/* Create an input object from a Python string
(copies the Python string reference).
*/
PyObject *(*NewInput)(PyObject *);
/* The Python types for cStringIO input and output objects.
Note that you can do input on an output object.
*/
PyTypeObject *InputType, *OutputType;
} *PycStringIO;
/* These can be used to test if you have one */
#define PycStringIO_InputCheck(O) \
(Py_TYPE(O)==PycStringIO->InputType)
#define PycStringIO_OutputCheck(O) \
(Py_TYPE(O)==PycStringIO->OutputType)
#ifdef __cplusplus
}
#endif
#endif /* !Py_CSTRINGIO_H */
......@@ -297,7 +297,7 @@ class SysModuleTest(unittest.TestCase):
self.assert_(isinstance(vi[4], int))
def test_43581(self):
# Can't use sys.stdout, as this is a cStringIO object when
# Can't use sys.stdout, as this is a StringIO object when
# the test runs under regrtest.
self.assertEqual(sys.__stdout__.encoding, sys.__stderr__.encoding)
......
......@@ -339,9 +339,6 @@ _symtable symtablemodule.c
# Fred Drake's interface to the Python parser
#parser parsermodule.c
# cStringIO
#cStringIO cStringIO.c
# Lee Busby's SIGFPE modules.
# The library to link fpectl with is platform specific.
......
......@@ -690,10 +690,6 @@
RelativePath="..\..\Include\complexobject.h"
>
</File>
<File
RelativePath="..\..\Include\cStringIO.h"
>
</File>
<File
RelativePath="..\..\Include\datetime.h"
>
......
......@@ -50,7 +50,6 @@ extern void init_symtable();
extern void init_weakref();
extern void initarray();
extern void initbinascii();
extern void initcStringIO();
extern void initcollections();
extern void initcmath();
extern void initdatetime();
......@@ -110,7 +109,6 @@ struct _inittab _PyImport_Inittab[] = {
{"_weakref", init_weakref},
{"array", initarray},
{"binascii", initbinascii},
{"cStringIO", initcStringIO},
{"collections", initcollections},
{"cmath", initcmath},
{"datetime", initdatetime},
......
......@@ -1218,9 +1218,6 @@ EXPORTS
; "initcPickle"
; "fast_save_leave"
; From python26_s.lib(cStringIO)
; "initcStringIO"
; From python26_s.lib(_csv)
; "init_csv"
......
......@@ -34,7 +34,6 @@ extern void init_socket(void);
extern void initstruct(void);
extern void inittime(void);
extern void init_thread(void);
extern void initcStringIO(void);
extern void initpcre(void);
#ifdef WIN32
extern void initmsvcrt(void);
......@@ -78,7 +77,6 @@ struct _inittab _PyImport_Inittab[] = {
#ifdef WITH_THREAD
{"_thread", init_thread},
#endif
{"cStringIO", initcStringIO},
{"pcre", initpcre},
#ifdef WIN32
{"msvcrt", initmsvcrt},
......
......@@ -180,7 +180,6 @@ MODULES = \
$(PATHOBJ)\ArrayModule.obj \
$(PATHOBJ)\BinAscii.obj \
$(PATHOBJ)\CMathModule.obj \
$(PATHOBJ)\cStringIO.obj \
$(PATHOBJ)\ErrnoModule.obj \
$(PATHOBJ)\GCModule.obj \
$(PATHOBJ)\GetBuildInfo.obj \
......@@ -440,7 +439,7 @@ cmathmodule.obj: $(PY_INCLUDE)\abstract.h $(PY_INCLUDE)\ceval.h \
cpickle.obj: $(PY_INCLUDE)\abstract.h $(PY_INCLUDE)\ceval.h $(PY_INCLUDE)\classobject.h \
$(PY_INCLUDE)\cobject.h $(PY_INCLUDE)\complexobject.h pyconfig.h \
$(PY_INCLUDE)\cstringio.h $(PY_INCLUDE)\dictobject.h $(PY_INCLUDE)\fileobject.h \
$(PY_INCLUDE)\dictobject.h $(PY_INCLUDE)\fileobject.h \
$(PY_INCLUDE)\floatobject.h $(PY_INCLUDE)\funcobject.h $(PY_INCLUDE)\import.h \
$(PY_INCLUDE)\intobject.h $(PY_INCLUDE)\intrcheck.h $(PY_INCLUDE)\listobject.h \
$(PY_INCLUDE)\longobject.h $(PY_INCLUDE)\methodobject.h \
......@@ -466,20 +465,6 @@ cryptmodule.obj: $(PY_INCLUDE)\abstract.h $(PY_INCLUDE)\ceval.h \
$(PY_INCLUDE)\stringobject.h $(PY_INCLUDE)\sysmodule.h $(PY_INCLUDE)\traceback.h \
$(PY_INCLUDE)\tupleobject.h
cstringio.obj: $(PY_INCLUDE)\abstract.h $(PY_INCLUDE)\ceval.h $(PY_INCLUDE)\classobject.h \
$(PY_INCLUDE)\cobject.h $(PY_INCLUDE)\complexobject.h pyconfig.h \
$(PY_INCLUDE)\cstringio.h $(PY_INCLUDE)\dictobject.h $(PY_INCLUDE)\fileobject.h \
$(PY_INCLUDE)\floatobject.h $(PY_INCLUDE)\funcobject.h $(PY_INCLUDE)\import.h \
$(PY_INCLUDE)\intobject.h $(PY_INCLUDE)\intrcheck.h $(PY_INCLUDE)\listobject.h \
$(PY_INCLUDE)\longobject.h $(PY_INCLUDE)\methodobject.h \
$(PY_INCLUDE)\modsupport.h $(PY_INCLUDE)\moduleobject.h $(PY_INCLUDE)\mymalloc.h \
$(PY_INCLUDE)\myproto.h $(PY_INCLUDE)\object.h $(PY_INCLUDE)\objimpl.h \
$(PY_INCLUDE)\pydebug.h $(PY_INCLUDE)\pyerrors.h $(PY_INCLUDE)\pyfpe.h \
$(PY_INCLUDE)\pystate.h $(PY_INCLUDE)\python.h $(PY_INCLUDE)\pythonrun.h \
$(PY_INCLUDE)\rangeobject.h $(PY_INCLUDE)\sliceobject.h \
$(PY_INCLUDE)\stringobject.h $(PY_INCLUDE)\sysmodule.h $(PY_INCLUDE)\traceback.h \
$(PY_INCLUDE)\tupleobject.h
cursesmodule.obj: $(PY_INCLUDE)\abstract.h $(PY_INCLUDE)\ceval.h \
$(PY_INCLUDE)\classobject.h $(PY_INCLUDE)\cobject.h $(PY_INCLUDE)\complexobject.h \
pyconfig.h $(PY_INCLUDE)\dictobject.h $(PY_INCLUDE)\fileobject.h \
......
......@@ -142,7 +142,6 @@ MODULES = \
ArrayModule.obj \
BinAscii.obj \
CMathModule.obj \
cStringIO.obj \
ErrnoModule.obj \
GetBuildInfo.obj \
GetPathP.obj \
......@@ -379,7 +378,7 @@ cmathmodule.obj: abstract.h ceval.h classobject.h cobject.h complexobject.h \
stringobject.h sysmodule.h traceback.h tupleobject.h
cpickle.obj: abstract.h ceval.h classobject.h cobject.h complexobject.h \
pyconfig.h cstringio.h dictobject.h fileobject.h floatobject.h \
pyconfig.h dictobject.h fileobject.h floatobject.h \
funcobject.h import.h intobject.h intrcheck.h listobject.h \
longobject.h methodobject.h modsupport.h moduleobject.h mymalloc.h \
mymath.h myproto.h object.h objimpl.h pydebug.h pyerrors.h pyfpe.h \
......@@ -394,14 +393,6 @@ cryptmodule.obj: abstract.h ceval.h classobject.h cobject.h complexobject.h \
pythonrun.h rangeobject.h sliceobject.h stringobject.h sysmodule.h \
traceback.h tupleobject.h
cstringio.obj: abstract.h ceval.h classobject.h cobject.h complexobject.h \
pyconfig.h cstringio.h dictobject.h fileobject.h floatobject.h \
funcobject.h import.h intobject.h intrcheck.h listobject.h \
longobject.h methodobject.h modsupport.h moduleobject.h mymalloc.h \
myproto.h object.h objimpl.h pydebug.h pyerrors.h pyfpe.h \
pystate.h python.h pythonrun.h rangeobject.h sliceobject.h \
stringobject.h sysmodule.h traceback.h tupleobject.h
cursesmodule.obj: abstract.h ceval.h classobject.h cobject.h \
complexobject.h pyconfig.h dictobject.h fileobject.h floatobject.h \
funcobject.h import.h intobject.h intrcheck.h listobject.h \
......
......@@ -694,10 +694,6 @@
RelativePath="..\Include\complexobject.h"
>
</File>
<File
RelativePath="..\Include\cStringIO.h"
>
</File>
<File
RelativePath="..\Include\datetime.h"
>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment