morfeusz.i
1.31 KB
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
51
52
%module MorfeuszWrapper
%feature("autodoc", "2");
%{
#include "Morfeusz.hpp"
#include "MorphInterpretation.hpp"
#include "const.hpp"
%}
%include "std_vector.i"
%include "std_string.i"
#ifdef SWIGJAVA
%include "enums.swg"
/* Force the generated Java code to use the C enum values rather than making a JNI call */
%javaconst(1);
%pragma(java) jniclasscode=%{
static {
System.loadLibrary("jmorfeusz");
}
%}
#endif
%ignore MorphInterpretation::MorphInterpretation(
int startNode,
int endNode,
const std::string& orth,
const std::string& lemma,
int tagnum,
int namenum,
const Tagset& tagset,
const CharsetConverter& charsetConverter);
%ignore MorphInterpretation::createIgn(int startNode, const std::string& orth, const Tagset& tagset, const CharsetConverter& charsetConverter);
%ignore Tagset::Tagset(const unsigned char* fsaData);
%include "Morfeusz.hpp"
%include "MorphInterpretation.hpp"
%include "const.hpp"
// instantiate vector of interpretations
namespace std {
// dirty hack so it will compile without no-arg constructor for MorphInterpretation
%ignore vector<MorphInterpretation>::vector(size_type);
%ignore vector<MorphInterpretation>::resize;
%template(InterpsVector) vector<MorphInterpretation>;
}