#ifndef SWIG_LIBWCCL_MATCHRULE_I #define SWIG_LIBWCCL_MATCHRULE_I %module libcclmatchrule %{ #include <libwccl/ops/matchrule.h> %} %include "libcclvariables.i" %include "libcclparsedexpression.i" %include "libcorpus/libcorpusannotatedsentence.i" %include "std_string.i" %include "boost_shared_ptr.i" namespace Wccl { class MatchRule : public ParsedExpression { public: MatchRule( const Variables& variables, const boost::shared_ptr<ApplyOperator>& apply ); MatchRule(const MatchRule& other, bool clean = false); MatchRule(); /* --------------------------------------------------------------------- */ %rename(OpFunMatchRule) operator()(const boost::shared_ptr<Corpus2::AnnotatedSentence>& s); void operator()(const boost::shared_ptr<Corpus2::AnnotatedSentence>& s); void apply(const boost::shared_ptr<Corpus2::AnnotatedSentence>& s); /* --------------------------------------------------------------------- */ MatchRule clone() const; MatchRule clone_clean() const; boost::shared_ptr<MatchRule> clone_ptr() const; boost::shared_ptr<MatchRule> clone_clean_ptr() const; /* --------------------------------------------------------------------- */ %rename(OpEqMatchRule) *::operator=(const MatchRule& other); /* --------------------------------------------------------------------- */ std::string to_string(const Corpus2::Tagset& tagset) const; }; } using namespace std; using namespace Wccl; #endif /* SWIG_LIBWCCL_MATCHRULE_I */