summaryrefslogtreecommitdiffstats
path: root/src/uscxml/plugins/datamodel/lua/bindings.i
blob: 08dfc845e15e00631c0c85135aa341e1dcce8709 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#define XERCES_HAS_CPP_NAMESPACE 1

%include <std_string.i>

/*

swig -I/Users/sradomski/Documents/TK/Code/uscxml2/build/cli/deps/xerces-c/include/ -lua -c++ uscxml.i
gcc -I/Users/sradomski/Documents/TK/Code/uscxml2/build/cli/deps/xerces-c/include/ ./uscxml_wrap.cxx

*/

%module LuaDOM

%import "uscxml/config.h"
%import "uscxml/Common.h"

#ifndef NO_XERCESC
%import "xercesc/util/XercesDefs.hpp"
%import "xercesc/util/Xerces_autoconf_config.hpp"

%include "../common/bindings/dom/ignore.i"
%include "../common/bindings/dom/defines.i"
%include "../common/bindings/dom/typemaps-general.i"

// todo: read about string encoding in lua
#if 0
// in typemap
%typemap(in) XMLCh * %{
  $1 = Lua2XMLString($input);
%}

%typemap(freearg) XMLCh * %{
  delete[] $1;
%}

// out typemap
%typemap(out) XMLCh * %{
  $result = XMLString2Lua($1);
%}
#endif

%include "../common/bindings/dom/dom.i"
#endif

// Operators we do want
// %rename(operator_assignment) operator=;
%rename(operator_equal_to) operator==;
%rename(operator_not_equal_to) operator!=;

%include "../common/bindings/event.i"