diff --git a/wccl-apps/wccl-run.cpp b/wccl-apps/wccl-run.cpp index daec529a320c57bac92a3ce0ee824e91878df90b..4b23e30c5888665b3e0be7da5f2ce7d35724085e 100644 --- a/wccl-apps/wccl-run.cpp +++ b/wccl-apps/wccl-run.cpp @@ -80,18 +80,22 @@ private: bool Runner::load_more_operators(const std::string& filename) { - boost::shared_ptr<Wccl::FunctionalOperator> retOp; + boost::shared_ptr<Wccl::WcclFile> retOp; try { std::ifstream is(filename.c_str()); if (!is.good()) { throw Wccl::FileNotFound(filename, "", __FUNCTION__); } - retOp = parser_.parseAnyOperator(is); + retOp = parser_.parseWcclFile(is); if (retOp) { boost::filesystem::path p(filename); - op_names_.push_back(p.stem()); - ops_.push_back(retOp); + std::string prefix = p.stem() + ":"; + Wccl::UntypedOpSequence::name_op_v_t pairs = retOp->gen_all_op_pairs(); + foreach (const Wccl::UntypedOpSequence::name_op_pair_t v, pairs) { + op_names_.push_back(prefix + v.first); + ops_.push_back(v.second); + } return true; } else { std::cerr << "Problem while parsing -- "