/
niceSOFT
/
swig
Обзор
Документация
Войти
/
niceSOFT
/
swig
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Examples/test-suite/pointer_reference.i
49 строк
1 KB
Geert Janssens
Drop guilegh interface
29 апр 2013, 00:06
29 апр 2013, 00:06
b819d2a
Код
Авторство
О чём код?
/* This interface file tests whether SWIG handles pointer-reference (*&) arguments. SWIG 1.3a5 signals a syntax error. */ %module pointer_reference %warnfilter(SWIGWARN_TYPEMAP_SWIGTYPELEAK); /* memory leak when setting a ptr/ref variable */ #ifdef SWIGGUILE /* A silly testing typemap for feeding a doubly indirect integer */ %typemap(in) int *&XYZZY (int temp1, int *temp2) { temp1 = scm_to_int($input); temp2 = &temp1; $1 = &temp2; }; #endif %inline %{ void foo(int *&XYZZY) {} %} // Test pointer reference typemaps shipped with SWIG (add in SWIG 1.3.28 for many languages) %inline %{ struct Struct { int value; Struct(int v) : value(v) {} static Struct instance; static Struct *pInstance; }; void set(Struct *const& s) { Struct::instance = *s; } Struct *const& get() { return Struct::pInstance; } int overloading(int i) { return 111; } int overloading(Struct *const& s) { return 222; } %} %{ Struct Struct::instance = Struct(10); Struct *Struct::pInstance = &Struct::instance; %}