diff --git a/swig/parsedexpression.i b/swig/parsedexpression.i index a77f1f351dfb21263366a5e7e794a14731660543..fdaa42c47399f14e4185c9d6f8385101522767fd 100644 --- a/swig/parsedexpression.i +++ b/swig/parsedexpression.i @@ -66,8 +66,25 @@ namespace Wccl { explicit ParsedExpression(const Variables& variables); virtual ParsedExpression* clone_internal() const = 0; }; -} +%extend ParsedExpression { + void set_bool(const std::string& name, const boost::shared_ptr<const Wccl::Bool>& b) { + self->set<Wccl::Bool>(name, *b); + } + void set_tset(const std::string& name, const boost::shared_ptr<const Wccl::TSet>& b) { + self->set<Wccl::TSet>(name, *b); + } + void set_strset(const std::string& name, const boost::shared_ptr<const Wccl::StrSet>& b) { + self->set<Wccl::StrSet>(name, *b); + } + void set_position(const std::string& name, const boost::shared_ptr<const Wccl::Position>& b) { + self->set<Wccl::Position>(name, *b); + } + void set_match(const std::string& name, const boost::shared_ptr<const Wccl::Match>& b) { + self->set<Wccl::Match>(name, *b); + } +} +} using namespace std; using namespace Wccl;