From 4749d102d969691666dfdf0309a3c529c77e0472 Mon Sep 17 00:00:00 2001
From: Adam Radziszewski <adam.radziszewski@pwr.wroc.pl>
Date: Wed, 4 Jan 2012 14:08:25 +0100
Subject: [PATCH] clean up op sequences (sections), fix typed sections

---
 swig/functionalopsequence.i | 29 ++++++++++++++---------------
 1 file changed, 14 insertions(+), 15 deletions(-)

diff --git a/swig/functionalopsequence.i b/swig/functionalopsequence.i
index 49d6a8f..1f36705 100644
--- a/swig/functionalopsequence.i
+++ b/swig/functionalopsequence.i
@@ -46,22 +46,18 @@ namespace Wccl {
     /* --------------------------------------------------------------------- */
 
     virtual fun_op_ptr_t get_untyped_ptr(size_t idx) = 0;
-    virtual fun_op_ptr_c_t get_untyped_ptr(size_t idx) const = 0;
     /* --------------------------------------------------------------------- */
 
     name_op_v_t& add_name_op_pairs_untyped(name_op_v_t& pairs);
-    name_op_v_c_t& add_name_op_pairs_untyped(name_op_v_c_t& pairs) const;
     /* --------------------------------------------------------------------- */
 
     name_op_v_t gen_name_op_pairs_untyped();
-    name_op_v_c_t gen_name_op_pairs_untyped() const;
     /* --------------------------------------------------------------------- */
 
     std::string gen_op_name(size_t idx) const;
     /* --------------------------------------------------------------------- */
 
     name_op_pair_t gen_name_op_pair_untyped(size_t idx);
-    name_op_pair_c_t gen_name_op_pair_untyped(size_t idx) const;
     /* --------------------------------------------------------------------- */
   
     shared_ptr<FunctionalOpSequence> clone() const;
@@ -97,23 +93,18 @@ namespace Wccl {
     /* --------------------------------------------------------------------- */
 
     fun_op_ptr_t get_untyped_ptr(size_t idx);
-    fun_op_ptr_c_t get_untyped_ptr(size_t idx) const;
     /* --------------------------------------------------------------------- */
 
     fun_op_ptr_t get_ptr(size_t idx);
-    fun_op_ptr_c_t get_ptr(size_t idx) const;
     /* --------------------------------------------------------------------- */
 
     name_op_v_t& add_name_op_pairs(name_op_v_t& pairs);
-    name_op_v_c_t& add_name_op_pairs(name_op_v_c_t& pairs) const;
     /* --------------------------------------------------------------------- */
 
     name_op_v_t gen_name_op_pairs();
-    name_op_v_c_t gen_name_op_pairs() const;
     /* --------------------------------------------------------------------- */
 
     name_op_pair_t gen_name_op_pair(size_t idx);
-    name_op_pair_c_t gen_name_op_pair(size_t idx) const;
     /* --------------------------------------------------------------------- */
 
     std::string to_string(const Corpus2::Tagset& tagset) const;
@@ -162,23 +153,20 @@ namespace Wccl {
     /* --------------------------------------------------------------------- */
 
     op_ptr_t get_ptr(size_t idx);
-    op_ptr_c_t get_ptr(size_t idx) const;
     /* --------------------------------------------------------------------- */
 
     FunctionalOpSequence::fun_op_ptr_t get_untyped_ptr(size_t idx);
-    FunctionalOpSequence::fun_op_ptr_c_t get_untyped_ptr(size_t idx) const;
     /* --------------------------------------------------------------------- */
 
     name_op_v_t gen_name_op_pairs();
-    name_op_v_c_t gen_name_op_pairs() const;
+/*     name_op_v_c_t gen_name_op_pairs() const; */
     /* --------------------------------------------------------------------- */
 
     name_op_v_t& add_name_op_pairs(name_op_v_t& pairs);
-    name_op_v_c_t& add_name_op_pairs(name_op_v_c_t& pairs) const;
+/*     name_op_v_c_t& add_name_op_pairs(name_op_v_c_t& pairs) const; */
     /* --------------------------------------------------------------------- */
 
     name_op_pair_t gen_name_op_pair(size_t idx);
-    name_op_pair_c_t gen_name_op_pair(size_t idx) const;
     /* --------------------------------------------------------------------- */
 
     std::string to_string(const Corpus2::Tagset& tagset) const;
@@ -196,12 +184,23 @@ namespace Wccl {
   }; // OpSequence
 }
 
+%template(BoolOpSequence) Wccl::OpSequence<Wccl::Bool>;
+%template(StrSetOpSequence) Wccl::OpSequence<Wccl::StrSet>;
+%template(TSetOpSequence) Wccl::OpSequence<Wccl::TSet>;
+%template(PositionOpSequence) Wccl::OpSequence<Wccl::Position>;
+
+%template(UntypedOpSequencePtr) boost::shared_ptr<Wccl::UntypedOpSequence>;
+%template(BoolOpSequencePtr) boost::shared_ptr<Wccl::OpSequence<Wccl::Bool> >;
+%template(StrSetOpSequencePtr) boost::shared_ptr< Wccl::OpSequence<Wccl::StrSet> >;
+%template(TSetOpSequencePtr) boost::shared_ptr<Wccl::OpSequence<Wccl::TSet> >;
+%template(PositionOpSequencePtr) boost::shared_ptr<Wccl::OpSequence<Wccl::Position> >;
+
 %template(UntypedOpSequencePtrVector) std::vector<boost::shared_ptr<Wccl::UntypedOpSequence> >;
 %template(BoolOpSequencePtrVector) std::vector<boost::shared_ptr<Wccl::OpSequence<Wccl::Bool> > >;
 %template(StrSetOpSequencePtrVector) std::vector<boost::shared_ptr<Wccl::OpSequence<Wccl::StrSet> > >;
 %template(TSetOpSequencePtrVector) std::vector<boost::shared_ptr<Wccl::OpSequence<Wccl::TSet> > >;
 %template(PositionOpSequencePtrVector) std::vector<boost::shared_ptr<Wccl::OpSequence<Wccl::Position> > >;
-%template(MatchOpSequencePtrVector) std::vector<boost::shared_ptr<Wccl::OpSequence<Wccl::Match> > >;
+
 
 using namespace boost;
 using namespace Wccl;
-- 
GitLab