blob: b65d9847d45cb9e7dc9b83925b448c0cf16a19f7 [file] [log] [blame]
Guido van Rossumda5b8f22007-06-12 23:30:11 +00001/* File object interface (what's left of it -- see io.py) */
Guido van Rossum85a5fbb1990-10-14 12:07:46 +00002
Fred Drakeea9cb5a2000-07-09 00:20:36 +00003#ifndef Py_FILEOBJECT_H
4#define Py_FILEOBJECT_H
5#ifdef __cplusplus
6extern "C" {
7#endif
8
Guido van Rossumda5b8f22007-06-12 23:30:11 +00009#define PY_STDIOTEXTMODE "b"
Martin v. Löwisf6eebbb2002-03-15 17:42:16 +000010
Guido van Rossumda5b8f22007-06-12 23:30:11 +000011PyAPI_FUNC(PyObject *) PyFile_FromFile(FILE *, char *, char *, int (*)(FILE*));
Guido van Rossumce3a72a2007-10-19 23:16:50 +000012PyAPI_FUNC(PyObject *) PyFile_FromFileEx(FILE *, char *, char *,
13 int (*)(FILE *), int, char *,
14 char *);
Mark Hammond91a681d2002-08-12 07:21:58 +000015PyAPI_FUNC(PyObject *) PyFile_GetLine(PyObject *, int);
16PyAPI_FUNC(int) PyFile_WriteObject(PyObject *, PyObject *, int);
Mark Hammond91a681d2002-08-12 07:21:58 +000017PyAPI_FUNC(int) PyFile_WriteString(const char *, PyObject *);
18PyAPI_FUNC(int) PyObject_AsFileDescriptor(PyObject *);
Guido van Rossumda5b8f22007-06-12 23:30:11 +000019PyAPI_FUNC(char *) Py_UniversalNewlineFgets(char *, int, FILE*, PyObject *);
Guido van Rossuma3309961993-07-28 09:05:47 +000020
Mark Hammond26cffde2001-05-14 12:17:34 +000021/* The default encoding used by the platform file system APIs
Tim Peters058b1412002-04-21 07:29:14 +000022 If non-NULL, this is different than the default encoding for strings
Mark Hammond26cffde2001-05-14 12:17:34 +000023*/
Mark Hammond91a681d2002-08-12 07:21:58 +000024PyAPI_DATA(const char *) Py_FileSystemDefaultEncoding;
Mark Hammond26cffde2001-05-14 12:17:34 +000025
Guido van Rossuma3309961993-07-28 09:05:47 +000026#ifdef __cplusplus
27}
28#endif
29#endif /* !Py_FILEOBJECT_H */