summaryrefslogtreecommitdiff
path: root/Examples/test-suite/threads.i
blob: 7c6b09be0d281bec46c23fb7d48a041483e5bf67 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// This test is designed for testing wrappers in the target language in a multi-threaded environment.
// The most common cause for this test failing is incorrect compiler settings for a multi-threaded environment.

%module threads

%include "std_string.i"

%newobject Kerfuffle::CharString;

%inline %{
  #include <string>
  struct Kerfuffle {
    std::string StdString(std::string str) {
      return str;
    }
    char * CharString(const char *str) {
      char * retstr = new char[256];
      strcpy(retstr, str);
      return retstr;
    }
  };
%}