summaryrefslogtreecommitdiffstats
path: root/languages/pascal/PascalLexer.hpp
blob: c2232e65b727158d582502ca2cfce2bd8db91925 (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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
#ifndef INC_PascalLexer_hpp_
#define INC_PascalLexer_hpp_

#line 29 "pascal.g"

        #include "problemreporter.h"
        #include "PascalAST.hpp"

        #include <tqlistview.h>
        #include <kdebug.h>

        #define SET_POSITION(ast,t)\
        { \
                RefPascalAST(ast)->setLine( t->getLine() );\
                RefPascalAST(ast)->setColumn( t->getColumn() ); \
        }

#line 19 "PascalLexer.hpp"
#include <antlr/config.hpp>
/* $ANTLR 2.7.7 (20061129): "pascal.g" -> "PascalLexer.hpp"$ */
#include <antlr/CommonToken.hpp>
#include <antlr/InputBuffer.hpp>
#include <antlr/BitSet.hpp>
#include "PascalTokenTypes.hpp"
#include <antlr/CharScanner.hpp>
class CUSTOM_API PascalLexer : public ANTLR_USE_NAMESPACE(antlr)CharScanner, public PascalTokenTypes
{
#line 1067 "pascal.g"

private:
        ProblemReporter* m_problemReporter;
        unsigned int m_numberOfErrors;

public:
        void resetErrors()                              { m_numberOfErrors = 0; }
        unsigned int numberOfErrors() const             { return m_numberOfErrors; }
        void setProblemReporter( ProblemReporter* r )   { m_problemReporter = r; }

        virtual void reportError( const ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex ){
                m_problemReporter->reportError( ex.getMessage().c_str(),
                                                ex.getFilename().c_str(),
                                                ex.getLine(),
                                                ex.getColumn() );
                ++m_numberOfErrors;
        }

        virtual void reportError( const ANTLR_USE_NAMESPACE(std)string& errorMessage ){
                m_problemReporter->reportError( errorMessage.c_str(),
                                                getFilename().c_str(),
                                                getLine(), getColumn() );
                ++m_numberOfErrors;
        }

        virtual void reportWarning( const ANTLR_USE_NAMESPACE(std)string& warnMessage ){
                m_problemReporter->reportWarning( warnMessage.c_str(),
                                                getFilename().c_str(),
                                                getLine(), getColumn() );
        }
#line 30 "PascalLexer.hpp"
private:
	void initLiterals();
public:
	bool getCaseSensitiveLiterals() const
	{
		return false;
	}
public:
	PascalLexer(ANTLR_USE_NAMESPACE(std)istream& in);
	PascalLexer(ANTLR_USE_NAMESPACE(antlr)InputBuffer& ib);
	PascalLexer(const ANTLR_USE_NAMESPACE(antlr)LexerSharedInputState& state);
	ANTLR_USE_NAMESPACE(antlr)RefToken nextToken();
	public: void mPLUS(bool _createToken);
	public: void mMINUS(bool _createToken);
	public: void mSTAR(bool _createToken);
	public: void mSLASH(bool _createToken);
	public: void mASSIGN(bool _createToken);
	public: void mCOMMA(bool _createToken);
	public: void mSEMI(bool _createToken);
	public: void mCOLON(bool _createToken);
	public: void mETQUAL(bool _createToken);
	public: void mNOT_EQUAL(bool _createToken);
	public: void mLTH(bool _createToken);
	public: void mLE(bool _createToken);
	public: void mGE(bool _createToken);
	public: void mGT(bool _createToken);
	public: void mLPAREN(bool _createToken);
	public: void mRPAREN(bool _createToken);
	public: void mLBRACK(bool _createToken);
	public: void mLBRACK2(bool _createToken);
	public: void mRBRACK(bool _createToken);
	public: void mRBRACK2(bool _createToken);
	public: void mPOINTER(bool _createToken);
	public: void mAT(bool _createToken);
	public: void mDOT(bool _createToken);
	public: void mLCURLY(bool _createToken);
	public: void mRCURLY(bool _createToken);
	public: void mPLUSEQ(bool _createToken);
	public: void mMINUSEQ(bool _createToken);
	public: void mSTAREQ(bool _createToken);
	public: void mSLASHQE(bool _createToken);
	public: void mWS(bool _createToken);
	public: void mCOMMENT_1(bool _createToken);
	public: void mCOMMENT_2(bool _createToken);
	public: void mCOMMENT_3(bool _createToken);
	public: void mIDENT(bool _createToken);
	public: void mSTRING_LITERAL(bool _createToken);
	public: void mNUM_INT(bool _createToken);
	protected: void mEXPONENT(bool _createToken);
private:
	
	static const unsigned long _tokenSet_0_data_[];
	static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_0;
	static const unsigned long _tokenSet_1_data_[];
	static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_1;
	static const unsigned long _tokenSet_2_data_[];
	static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_2;
	static const unsigned long _tokenSet_3_data_[];
	static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_3;
};

#endif /*INC_PascalLexer_hpp_*/