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
00027 # undef BISON_LOCATION_HH
00028 # undef BISON_POSITION_HH
00029 # include "ltlparse/location.hh"
00030 # include "ltlenv/defaultenv.hh"
00031 # include <string>
00032 # include <list>
00033 # include <utility>
00034 # include <iosfwd>
00035
00036 namespace spot
00037 {
00038 namespace ltl
00039 {
00042
00044 typedef std::pair<ltlyy::location, std::string> parse_error;
00046 typedef std::list<parse_error> parse_error_list;
00047
00048
00064 formula* parse(const std::string& ltl_string,
00065 parse_error_list& error_list,
00066 environment& env = default_environment::instance(),
00067 bool debug = false);
00068
00075 bool format_parse_errors(std::ostream& os,
00076 const std::string& ltl_string,
00077 parse_error_list& error_list);
00078
00080 }
00081 }
00082
00083 #endif // SPOT_LTLPARSE_PUBLIC_HH