1//============================================================================
2//
3// SSSS tt lll lll
4// SS SS tt ll ll
5// SS tttttt eeee ll ll aaaa
6// SSSS tt ee ee ll ll aa
7// SS tt eeeeee ll ll aaaaa -- "An Atari 2600 VCS Emulator"
8// SS SS tt ee ll ll aa aa
9// SSSS ttt eeeee llll llll aaaaa
10//
11// Copyright (c) 1995-2019 by Bradford W. Mott, Stephen Anthony
12// and the Stella Team
13//
14// See the file "License.txt" for information on usage and redistribution of
15// this file, and for a DISCLAIMER OF ALL WARRANTIES.
16//============================================================================
17
18#ifndef PARSER_HXX
19#define PARSER_HXX
20
21#include "Expression.hxx"
22#include "CartDebug.hxx"
23#include "CpuDebug.hxx"
24#include "TIADebug.hxx"
25
26#include "bspf.hxx"
27
28// FIXME - Convert this to a proper C++ class using Bison and Flex C++ mode
29namespace YaccParser
30{
31 Expression* getResult();
32 const string& errorMessage();
33
34 void setInput(const string& in);
35 int parse(const string& in);
36 int const_to_int(char* ch);
37
38 CartMethod getCartSpecial(char* ch);
39 CpuMethod getCpuSpecial(char* ch);
40 TiaMethod getTiaSpecial(char* ch);
41}
42
43#endif
44