-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathParser.h
More file actions
43 lines (34 loc) · 817 Bytes
/
Parser.h
File metadata and controls
43 lines (34 loc) · 817 Bytes
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
41
42
43
#ifndef PARSER_H_INCLUDED
#define PARSER_H_INCLUDED
//stl
#include <stdio.h>
#include <string>
#include <vector>
// project
#include "main.h"
class Bot;
class Parser: boost::noncopyable
{
public:
Parser(Bot* bot);
virtual ~Parser();
void parseInput();
void parseSetupMap();
void parseStartingRegions();
void parseSettings();
void parseUpdateMap();
void parseOpponentMoves();
void parseGo();
void parseSuperRegions();
void parseRegions();
void parsePickStartingRegion();
void parseOpponentStartingRegions();
void parseNeighbors();
void parseWastelands();
private:
Parser();
Bot* theBot;
// helper function for the case we want to handle \r\n in future
inline bool lineEnds(){ return bool(std::cin.peek() == '\n'); }
};
#endif // PARSER_H_INCLUDED