Newer
Older
#ifndef SWIG_LIBWCCL_TAGRULESEQUENCE_I
#define SWIG_LIBWCCL_TAGRULESEQUENCE_I
%module libccltagrulesequence
%{
#include <libwccl/ops/tagrulesequence.h>
%}
%include "libcclbool.i"
%include "libccltagrule.i"
%include "libcclexpression.i"
%include "libcorpus/libcorpussentence.i"
%include "std_string.i"
%include "std_vector.i"
%include "boost_shared_ptr.i"
%template(StdVectorTagRule) std::vector<TagRule>;
%template(TagRuleSequencPtr) boost::shared_ptr<Wccl::TagRuleSequence>;
namespace Wccl {
class TagRuleSequence : public std::vector<TagRule>, public Expression {
public:
TagRuleSequence(const std::vector<TagRule>& rules);
TagRuleSequence();
/* --------------------------------------------------------------------- */
%rename(OpFunTagRuleSequence) operator()(
const shared_ptr<Corpus2::Sentence>& sentence
Bool operator()(const shared_ptr<Corpus2::Sentence>& sentence);
/* --------------------------------------------------------------------- */
Bool execute_once(const shared_ptr<Corpus2::Sentence>& sentence);
int execute_until_done(const shared_ptr<Corpus2::Sentence>& sentence, int max_iter = 1000);