python27_sys/
fileobject.rs1use libc::{c_char, c_int, size_t, FILE};
2
3use crate::object::*;
4
5#[cfg_attr(windows, link(name = "pythonXY"))]
6extern "C" {
7 pub static mut PyFile_Type: PyTypeObject;
8}
9
10#[inline(always)]
11pub unsafe fn PyFile_Check(op: *mut PyObject) -> c_int {
12 PyObject_TypeCheck(op, &mut PyFile_Type)
13}
14
15#[inline(always)]
16pub unsafe fn PyFile_CheckExact(op: *mut PyObject) -> c_int {
17 (Py_TYPE(op) == &mut PyFile_Type) as c_int
18}
19
20pub const PY_STDIOTEXTMODE: &str = "b";
21
22#[cfg_attr(windows, link(name = "pythonXY"))]
23extern "C" {
24 pub fn PyFile_FromString(arg1: *mut c_char, arg2: *mut c_char) -> *mut PyObject;
25 pub fn PyFile_SetBufSize(arg1: *mut PyObject, arg2: c_int);
26 pub fn PyFile_SetEncoding(arg1: *mut PyObject, arg2: *const c_char) -> c_int;
27 pub fn PyFile_SetEncodingAndErrors(
28 arg1: *mut PyObject,
29 arg2: *const c_char,
30 errors: *mut c_char,
31 ) -> c_int;
32 pub fn PyFile_FromFile(
33 arg1: *mut FILE,
34 arg2: *mut c_char,
35 arg3: *mut c_char,
36 arg4: Option<unsafe extern "C" fn(arg1: *mut FILE) -> c_int>,
37 ) -> *mut PyObject;
38 pub fn PyFile_AsFile(arg1: *mut PyObject) -> *mut FILE;
39 ignore! {
40 pub fn PyFile_IncUseCount(arg1: *mut PyFileObject);
41 pub fn PyFile_DecUseCount(arg1: *mut PyFileObject);
42 }
43 pub fn PyFile_Name(arg1: *mut PyObject) -> *mut PyObject;
44 pub fn PyFile_GetLine(arg1: *mut PyObject, arg2: c_int) -> *mut PyObject;
45 pub fn PyFile_WriteObject(arg1: *mut PyObject, arg2: *mut PyObject, arg3: c_int) -> c_int;
46 pub fn PyFile_SoftSpace(arg1: *mut PyObject, arg2: c_int) -> c_int;
47 pub fn PyFile_WriteString(arg1: *const c_char, arg2: *mut PyObject) -> c_int;
48 pub fn PyObject_AsFileDescriptor(arg1: *mut PyObject) -> c_int;
49 pub fn Py_UniversalNewlineFgets(
50 arg1: *mut c_char,
51 arg2: c_int,
52 arg3: *mut FILE,
53 arg4: *mut PyObject,
54 ) -> *mut c_char;
55 pub fn Py_UniversalNewlineFread(
56 arg1: *mut c_char,
57 arg2: size_t,
58 arg3: *mut FILE,
59 arg4: *mut PyObject,
60 ) -> size_t;
61
62 pub static mut Py_FileSystemDefaultEncoding: *const c_char;
63}