From 19e5bc736397718b2887dfb33c1b9d5782d6c015 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pawe=C5=82=20K=C4=99dzia?= <pawel.kedzia@pwr.wroc.pl>
Date: Mon, 4 Apr 2011 14:30:17 +0200
Subject: [PATCH] Added wrapper for Corpus2::Token

---
 swig/libcorpustoken.i | 52 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)
 create mode 100644 swig/libcorpustoken.i

diff --git a/swig/libcorpustoken.i b/swig/libcorpustoken.i
new file mode 100644
index 0000000..90a4736
--- /dev/null
+++ b/swig/libcorpustoken.i
@@ -0,0 +1,52 @@
+#ifndef SWIG_LIBCORPUS2_TOKEN_I
+#define SWIG_LIBCORPUS2_TOKEN_I
+
+%module libcorpustoken
+%{
+  #include <unicode/unistr.h>
+  #include <libcorpus2/token.h>
+%}
+
+%include "libcorpustagset.i"
+
+%include "std_pair.i"
+%include "std_string.i"
+%include "std_vector.i"
+
+%feature("notabstract") Corpus2::Token;
+
+%rename(__op_eq__) Corpus2::Token::operator==(const Token& other) const;
+
+namespace Corpus2 {
+  class Token {
+  public:
+    Token();
+    Token(const UnicodeString& orth, PwrNlp::Whitespace::Enum wa);
+    Token* clone() const;
+    
+    const UnicodeString& orth() const;
+    std::string orth_utf8() const;
+    void set_orth(const UnicodeString& orth);
+    const PwrNlp::Whitespace::Enum& wa() const;
+    void set_wa(const PwrNlp::Whitespace::Enum& wa);
+    const std::vector<Lexeme>& lexemes() const;
+    std::vector<Lexeme>& lexemes();
+    void add_lexeme(const Lexeme& lex);
+    const Lexeme& get_preferred_lexeme(const Tagset& tagset) const;
+    size_t get_preferred_lexeme_index(const Tagset& tagset) const;
+    void make_ign(const Tagset& tagset);
+    void add_ign(const Tagset& tagset);
+    bool operator==(const Token& other) const;
+    bool check_duplicate_lexemes() const;
+    bool remove_duplicate_lexemes();
+    bool has_disamb_lexeme() const;
+    int count_disamb_lexemes() const;
+    std::pair<lexeme_filter_iterator, lexeme_filter_iterator> disamb_lexemes() const;
+  };
+}
+
+using namespace std;
+using namespace Corpus2;
+
+
+#endif /* SWIG_LIBCORPUS2_TOKEN_I */
-- 
GitLab