Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / sam-t2 / devtools / v9 / share / swig / 1.3.26 / python / file.i
CommitLineData
920dae64
AT
1/*
2 Typemaps for FILE*
3
4 From the ideas of Luigi
5 luigi.ballabio@fastwebnet.it
6*/
7
8%types(FILE *);
9
10/* defining basic methods */
11%fragment("SWIG_AsValFilePtr","header") {
12SWIGINTERN int
13SWIG_AsValFilePtr(PyObject *obj, FILE **val) {
14 static swig_type_info* desc = 0;
15 FILE *ptr = 0;
16 if (!desc) desc = SWIG_TypeQuery("FILE *");
17 if ((SWIG_ConvertPtr(obj,(void **)(&ptr), desc, 0)) != -1) {
18 if (val) *val = ptr;
19 return 1;
20 }
21 if (PyFile_Check(obj)) {
22 if (val) *val = PyFile_AsFile(obj);
23 return 1;
24 }
25 if (val) PyErr_SetString(PyExc_TypeError, "a FILE* is expected");
26 return 0;
27}
28}
29
30%fragment("SWIG_AsFilePtr","header",fragment="SWIG_AsValFilePtr") {
31SWIGINTERNINLINE FILE*
32SWIG_AsFilePtr(PyObject *obj) {
33 FILE *val = 0;
34 SWIG_AsValFilePtr(obj, &val);
35 return val;
36}
37}
38
39%fragment("SWIG_CheckFilePtr","header",fragment="SWIG_AsValFilePtr") {
40SWIGINTERNINLINE int
41SWIG_CheckFilePtr(PyObject *obj) {
42 return SWIG_AsValFilePtr(obj, (FILE **)(0));
43}
44}
45
46/* defining the typemaps */
47%typemap_ascheck(SWIG_CCode(POINTER), SWIG_AsFilePtr, SWIG_CheckFilePtr,
48 "SWIG_AsFilePtr", "SWIG_CheckFilePtr", FILE*);