00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef SPOT_LTLPARSE_PUBLIC_HH
00023 # define SPOT_LTLPARSE_PUBLIC_HH
00024
00025 # include "ltlast/formula.hh"
00026 # include "location.hh"
00027 # include "ltlenv/defaultenv.hh"
00028 # include <string>
00029 # include <list>
00030 # include <utility>
00031 # include <iosfwd>
00032
00033 namespace spot
00034 {
00035 namespace ltl
00036 {
00039
00041 typedef std::pair<yy::Location, std::string> parse_error;
00043 typedef std::list<parse_error> parse_error_list;
00044
00045
00061 formula* parse(const std::string& ltl_string,
00062 parse_error_list& error_list,
00063 environment& env = default_environment::instance(),
00064 bool debug = false);
00065
00072 bool format_parse_errors(std::ostream& os,
00073 const std::string& ltl_string,
00074 parse_error_list& error_list);
00075
00077 }
00078 }
00079
00080 #endif // SPOT_LTLPARSE_PUBLIC_HH