12#ifndef MCRL2_LPS_LPS_REWRITER_TOOL_H
13#define MCRL2_LPS_LPS_REWRITER_TOOL_H
16#include "mcrl2/utilities/command_line_interface.h"
17#include "mcrl2/lps/lps_rewriter_type.h"
23template <
typename Tool>
35 std::set<lps::lps_rewriter_type> result;
36 result.insert(lps::lps_rewriter_type::simplify);
37 result.insert(lps::lps_rewriter_type::quantifier_one_point);
38 result.insert(lps::lps_rewriter_type::condition_one_point);
39 result.insert(lps::lps_rewriter_type::prune_dataspec);
48 return lps::lps_rewriter_type::simplify;
56 Tool::add_options(desc);
61 for (
const lps::lps_rewriter_type& type: available_rewriters())
63 arg.add_value(type, type==default_rewriter());
69 "use lps rewrite strategy NAME:",
78 Tool::parse_options(parser);
91 const std::string& author,
92 const std::string& what_is,
93 const std::string& tool_description,
94 std::string known_issues =
""
Main parsing component for command line strings as well as interface to the results of parsing....
Command line interface description component.
The main namespace for the LPS library.