From 85ec635b4bd6980ccfd6580ead46041751e22251 Mon Sep 17 00:00:00 2001 From: ilor <kailoran@gmail.com> Date: Thu, 7 Apr 2011 13:58:13 +0200 Subject: [PATCH] add valid_variable_names accesor to ParsedExpression --- libwccl/ops/parsedexpression.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/libwccl/ops/parsedexpression.h b/libwccl/ops/parsedexpression.h index bf496b8..1982c8b 100644 --- a/libwccl/ops/parsedexpression.h +++ b/libwccl/ops/parsedexpression.h @@ -139,6 +139,11 @@ public: */ boost::shared_ptr<ParsedExpression> clone_clean_ptr() const; + /** + * @returns vector of strings corresponfing to valid variable names + * in this operator. + */ + std::vector<std::string> valid_variable_names() const; /** * @returns String with representation of all held variables, @@ -232,6 +237,17 @@ boost::shared_ptr<ParsedExpression> ParsedExpression::clone_clean_ptr() const { return copy; } +inline +std::vector<std::string> ParsedExpression::valid_variable_names() const { + std::vector<std::string> valid; + typedef std::pair<std::string, boost::shared_ptr<Wccl::Value> > v_t; + // ja chcÄ™ c++1x i auto/decltype + foreach (const v_t& v, variables_->get_all<Wccl::Value>()) { + valid.push_back(v.first); + } + return valid; +} + inline std::ostream& ParsedExpression::dump_variables( std::ostream &ostream, -- GitLab