Fawkes API  Fawkes Development Version
pddl_parser.h
1 
2 /***************************************************************************
3  * pddl_parser.h
4  *
5  * Created: Fri 19 May 2017 11:10:30 CEST
6  * Copyright 2017 Matthias Loebach
7  ****************************************************************************/
8 
9 /* This program is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation; either version 2 of the License, or
12  * (at your option) any later version.
13  *
14  * This program is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17  * GNU Library General Public License for more details.
18  *
19  * Read the full text in the LICENSE.GPL file in the doc directory.
20  */
21 
22 #ifndef PLUGINS_PDDL_PARSER_H_
23 #define PLUGINS_PDDL_PARSER_H_
24 
25 #include "pddl_exception.h"
26 #include "pddl_grammar.h"
27 
28 #include <boost/spirit/include/support_line_pos_iterator.hpp>
29 #include <string>
30 
31 namespace pddl_parser {
32 
34 {
35 public:
36  static Domain parseDomain(const std::string &pddl_domain);
37  static Problem parseProblem(const std::string &pddl_problem);
38 
39 private:
40  static std::string
41  getErrorContext(const iterator_type &, const iterator_type &, const iterator_type &);
42 };
43 
44 } // namespace pddl_parser
45 
46 #endif
Parse a PDDL domain file or problem.
Definition: pddl_parser.h:34
static Domain parseDomain(const std::string &pddl_domain)
Parse the PDDL domain.
Definition: pddl_parser.cpp:72
static Problem parseProblem(const std::string &pddl_problem)
Parse the PDDL problem.
A structured representation of a PDDL domain.
Definition: pddl_ast.h:157
A structured representation of a PDDL problem.
Definition: pddl_ast.h:180