PageRenderTime 31ms CodeModel.GetById 19ms app.highlight 11ms RepoModel.GetById 0ms app.codeStats 0ms

/tags/rel-1.3.35/Examples/test-suite/apply_signed_char.i

#
Swig | 35 lines | 24 code | 10 blank | 1 comment | 0 complexity | 50de0e49f6d78b26e27c0c0d7edfd284 MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
 1/* Test %apply for char */
 2
 3%module(directors="1") apply_signed_char
 4
 5%warnfilter(SWIGWARN_TYPEMAP_THREAD_UNSAFE,SWIGWARN_TYPEMAP_DIRECTOROUT_PTR) DirectorTest;
 6
 7%apply signed char {char, const char};
 8%apply const signed char & {const char &};
 9
10%inline %{
11  char CharValFunction(char number) { return number; }
12  const char CCharValFunction(const char number) { return number; }
13  const char & CCharRefFunction(const char & number) { return number; }
14  char globalchar = -109;
15  const char globalconstchar = -110;
16%}
17
18// Director test
19%feature("director");
20
21%inline %{
22  struct DirectorTest {
23
24    DirectorTest() : memberchar(-111), memberconstchar(-112) {}
25
26    virtual char CharValFunction(char number) { return number; }
27    virtual const char CCharValFunction(const char number) { return number; }
28    virtual const char & CCharRefFunction(const char & number) { return number; }
29
30    char memberchar;
31    const char memberconstchar;
32
33    virtual ~DirectorTest() {}
34  };
35%}