aboutsummaryrefslogtreecommitdiff
path: root/src/parser.h
blob: 675e28b9b1e07a9a52440139c42f4de75b9e788c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#ifndef PARSER_H
#define PARSER_H

#include <stdint.h>
#include <string>

class Build;

#if ! defined (YYLTYPE) && ! defined (YYLTYPE_IS_DECLARED)
typedef struct YYLTYPE
{
  int first_line;
  int first_column;
  int last_line;
  int last_column;
} YYLTYPE;
# define yyltype YYLTYPE /* obsolescent; will be withdrawn */
# define YYLTYPE_IS_DECLARED 1
# define YYLTYPE_IS_TRIVIAL 1
#endif

class Parser
{
public:
	Parser();
	virtual ~Parser();

	virtual void error( YYLTYPE *locp, const char *msg );
	virtual void error( const std::string &msg );

	virtual Build *load( const std::string &sFile ) = 0;

protected:
	std::string file;

private:

};

#endif