Skip to content
Snippets Groups Projects
Commit 027a4a97 authored by Paweł Kędzia's avatar Paweł Kędzia
Browse files

Corpus2::Lexeme wrapper

parent 11f6a2f2
No related merge requests found
......@@ -15,32 +15,38 @@ CPPFLAGS=-fPIC -O2
CBIN=libcorpustag.o \
libcorpustagset.o \
libcorpustagsetmanager.o
libcorpustagsetmanager.o \
libcorpuslexeme.o
CBINOUT=_boost_shared_ptr.so \
_libcorpustag.so \
_libcorpustagset.so \
_libcorpustagsetmanager.so
_libcorpustagsetmanager.so \
_libcorpuslexeme.so
CWRAP=boost_shared_ptr_wrap.cxx \
libcorpustag_wrap.cxx \
libcorpustagset_wrap.cxx \
libcorpustagsetmanager_wrap.cxx
libcorpustagsetmanager_wrap.cxx \
libcorpuslexeme_wrap.cxx
CWRAPBIN=boost_shared_ptr_wrap.o \
libcorpustag_wrap.o \
libcorpustagset_wrap.o \
libcorpustagsetmanager_wrap.o
libcorpustagsetmanager_wrap.o \
libcorpuslexeme_wrap.o
PYMODULES=boost_shared_ptr.py \
libcorpustag.py \
libcorpustagset.py \
libcorpustagsetmanager.py
libcorpustagsetmanager.py \
libcorpuslexeme.py
PYCBIN=boost_shared_ptr.pyc \
libcorpustag.pyc \
libcorpustagset.pyc \
libcorpustagsetmanager.pyc
libcorpustagsetmanager.pyc \
libcorpuslexeme.pyc
# -----------------------------------------------------------------------------
all:boost_shared_ptr.o $(CBIN)
......@@ -81,6 +87,13 @@ libcorpustagsetmanager.o:
$(CPP) -shared libcorpustagsetmanager_wrap.o \
$(PWRUTILBIN) $(CORPUS2BIN) -o _libcorpustagsetmanager.so
# Lexeme
libcorpuslexeme.o:
$(SWIG) $(SWIGOPTS_LANG) libcorpuslexeme.i
$(CPP) -c libcorpuslexeme_wrap.cxx -I$(PYTHONDIR) $(CPPFLAGS)
$(CPP) -shared libcorpuslexeme_wrap.o \
$(PWRUTILBIN) $(CORPUS2BIN) -o _libcorpuslexeme.so
# -----------------------------------------------------------------------------
clean:
rm -f $(CBIN) $(CBINOUT) $(CWRAP) $(CWRAPBIN) $(PYMODULES) $(PYCBIN)
#ifndef SWIG_LIBCORPUS2_LEXEME_I
#define SWIG_LIBCORPUS2_LEXEME_I
%module libcorpuslexeme
%{
#include <unicode/unistr.h>
#include <libcorpus2/lexeme.h>
%}
%include "libcorpustag.i"
%include "std_string.i"
%include "std_vector.i"
%feature("notabstract") Corpus2::Lexeme;
%rename(__op_eq__) Corpus2::Lexeme::operator==(const Lexeme& other) const;
%rename(__op_lw__) Corpus2::Lexeme::operator<(const Lexeme& other) const;
namespace Corpus2 {
class Lexeme {
public:
Lexeme();
Lexeme(const UnicodeString& lemma, const Tag& tag);
static Lexeme create(const UnicodeString& lemma, const Tag& tag);
// static Lexeme create_utf8(const std::string& lemma, const Tag& tag);
const UnicodeString& lemma() const;
const std::string lemma_utf8() const;
void set_lemma(const UnicodeString& l);
// void set_lemma_utf8(const std::string& l);
const Tag& tag() const;
void set_tag(const Tag& tag);
bool is_null() const;
void set_disamb(bool value);
bool is_disamb() const;
bool operator<(const Lexeme& other) const;
bool operator==(const Lexeme& other) const;
};
}
using namespace std;
using namespace Corpus2;
#endif /* SWIG_LIBCORPUS2_LEXEME_I */
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment