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 <iostream>
00032
00033 namespace spot
00034 {
00035 namespace ltl
00036 {
00038 typedef std::pair<yy::Location, std::string> parse_error;
00040 typedef std::list<parse_error> parse_error_list;
00041
00057 formula* parse(const std::string& ltl_string,
00058 parse_error_list& error_list,
00059 environment& env = default_environment::instance(),
00060 bool debug = false);
00061
00062
00069 bool format_parse_errors(std::ostream& os,
00070 const std::string& ltl_string,
00071 parse_error_list& error_list);
00072 }
00073 }
00074
00075 #endif // SPOT_LTLPARSE_PUBLIC_HH