diff --git a/swig/bool.i b/swig/bool.i index 7f4ff3a8e88ef94888f4ba13f692fb67bbbf6fe2..9091fcda952d3434180596a7a9531cc9b0d273ea 100644 --- a/swig/bool.i +++ b/swig/bool.i @@ -12,6 +12,9 @@ %feature("notabstract") Wccl::Bool; +%template(BoolPtr) boost::shared_ptr<Wccl::Bool>; +%template(ConstBoolPtr) boost::shared_ptr<Wccl::Bool const>; + namespace Wccl { class Bool : public Value { public: diff --git a/swig/functionaloperator.i b/swig/functionaloperator.i index 9ae78cf821ed1e11e8cc5bf7a8f9dbc03684d340..7058cc7753cf94cf839f43c2fde529a1e88f8b2a 100644 --- a/swig/functionaloperator.i +++ b/swig/functionaloperator.i @@ -14,9 +14,9 @@ %include "std_string.i" %include <libcorpus2/boost_shared_ptr.i> -// %template(ValuePtr) boost::shared_ptr<Wccl::Value>; %template(FunctionalOperatorPtr) boost::shared_ptr<Wccl::FunctionalOperator>; + namespace Wccl { class FunctionalOperator : public ParsedExpression { public: diff --git a/swig/match.i b/swig/match.i index f296bb3d54b478410832efaf10e72ab3eee4efb9..f492c02e9212a04e5bcd9c9ebfe416f36073e330 100644 --- a/swig/match.i +++ b/swig/match.i @@ -18,7 +18,8 @@ %feature("notabstract") Wccl::Match; -// %template (MatchPtr) boost::shared_ptr<Wccl::Match>; +%template(MatchPtr) boost::shared_ptr<Wccl::Match>; +%template(ConstMatchPtr) boost::shared_ptr<Wccl::Match const>; namespace Wccl { class Match : public Value { diff --git a/swig/position.i b/swig/position.i index c5d1698af84329764eae266b01e41f0423ae5f25..9379bc8fcb2163c660aa45e7b33595238d6b98af 100644 --- a/swig/position.i +++ b/swig/position.i @@ -13,6 +13,9 @@ %feature("notabstract") Wccl::Position; +%template(PositionPtr) boost::shared_ptr<Wccl::Position>; +%template(ConstPositionPtr) boost::shared_ptr<Wccl::Position const>; + namespace Wccl { class Position : public Value { public: diff --git a/swig/strset.i b/swig/strset.i index b97243db7ca166d4bd7b69e96e7acc00305115cb..d494f4e8ad182fca6fb1459e79b2a460b5bc9d4f 100644 --- a/swig/strset.i +++ b/swig/strset.i @@ -15,6 +15,9 @@ %feature("notabstract") Wccl::StrSet; +%template(StrSetPtr) boost::shared_ptr<Wccl::StrSet>; +%template(ConstStrSetPtr) boost::shared_ptr<Wccl::StrSet const>; + %template(UnicodeStringMap) std::set<UnicodeString>; namespace Wccl { diff --git a/swig/tset.i b/swig/tset.i index 54a7880c14000001d30dd1e660a0d0b665e42384..a8285f0eb304f2c3f7f162eb345065cd4689be8e 100644 --- a/swig/tset.i +++ b/swig/tset.i @@ -15,6 +15,9 @@ %feature("notabstract") Wccl::TSet; +%template(TSetPtr) boost::shared_ptr<Wccl::TSet>; +%template(ConstTSetPtr) boost::shared_ptr<Wccl::TSet const>; + namespace Wccl { class TSet : public Value { public: diff --git a/swig/value.i b/swig/value.i index 671c3c981ff1da336aa3b19064e6ab0cadb67f11..bc49be07dffb74589b197c6694539285b7b712e9 100644 --- a/swig/value.i +++ b/swig/value.i @@ -11,6 +11,9 @@ %nodefaultctor Wccl::Value; +%template(ValuePtr) boost::shared_ptr<Wccl::Value>; +%template(ConstValuePtr) boost::shared_ptr<Wccl::Value const>; + namespace Wccl { class Value { public: diff --git a/swig/variables.i b/swig/variables.i index 00eb421d3b8b257d38d40f8846d8d4574f2db088..6ad0e6ee0698e86abea863540d5aad21463db120 100644 --- a/swig/variables.i +++ b/swig/variables.i @@ -16,19 +16,8 @@ %include "std_string.i" %include <libcorpus2/boost_shared_ptr.i> -%template(ValuePtr) boost::shared_ptr<Wccl::Value>; -%template(BoolPtr) boost::shared_ptr<Wccl::Bool>; -%template(PositionPtr) boost::shared_ptr<Wccl::Position>; -%template(StrSetPtr) boost::shared_ptr<Wccl::StrSet>; -%template(TSetPtr) boost::shared_ptr<Wccl::TSet>; -%template(MatchPtr) boost::shared_ptr<Wccl::Match>; + %template(VariablesPtr) boost::shared_ptr<Wccl::Variables>; -%template(ConstValuePtr) boost::shared_ptr<Wccl::Value const>; -%template(ConstBoolPtr) boost::shared_ptr<Wccl::Bool const>; -%template(ConstPositionPtr) boost::shared_ptr<Wccl::Position const>; -%template(ConstStrSetPtr) boost::shared_ptr<Wccl::StrSet const>; -%template(ConstTSetPtr) boost::shared_ptr<Wccl::TSet const>; -%template(ConstMatchPtr) boost::shared_ptr<Wccl::Match const>; %template(ConstVariablesPtr) boost::shared_ptr<Wccl::Variables const>; namespace Wccl {