Lucene++ - a full-featured, c++ search engine
API Documentation

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- File List
- Globals

All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
QueryParserTokenManager.h
Go to the documentation of this file.
1 // Copyright (c) 2009-2011 Alan Wright. All rights reserved.
3 // Distributable under the terms of either the Apache License (Version 2.0)
4 // or the GNU Lesser General Public License.
6
7 #ifndef QUERYPARSERTOKENMANAGER_H
8 #define QUERYPARSERTOKENMANAGER_H
9
10 #include "QueryParserConstants.h"
11
12 namespace Lucene
13 {
15 class LPPAPI QueryParserTokenManager : public QueryParserConstants, public LuceneObject
16 {
17 public:
18 QueryParserTokenManager(QueryParserCharStreamPtr stream);
19 QueryParserTokenManager(QueryParserCharStreamPtr stream, int32_t lexState);
20
21 virtual ~QueryParserTokenManager();
22
23 LUCENE_CLASS(QueryParserTokenManager);
24
25 public:
27 InfoStreamPtr debugStream;
28
29 protected:
30 static const int64_t jjbitVec0[];
31 static const int64_t jjbitVec1[];
32 static const int64_t jjbitVec3[];
33 static const int64_t jjbitVec4[];
34 static const int32_t jjnextStates[];
35
37 static const wchar_t* jjstrLiteralImages[];
38
40 static const wchar_t* lexStateNames[];
41
43 static const int32_t jjnewLexState[];
44 static const int64_t jjtoToken[];
45 static const int64_t jjtoSkip[];
46
47 int32_t curLexState;
48 int32_t defaultLexState;
49 int32_t jjnewStateCnt;
50 int32_t jjround;
51 int32_t jjmatchedPos;
52 int32_t jjmatchedKind;
53
54 QueryParserCharStreamPtr input_stream;
55 IntArray jjrounds;
56 IntArray jjstateSet;
57 wchar_t curChar;
58
59 public:
61 void setDebugStream(InfoStreamPtr debugStream);
62
64 void ReInit(QueryParserCharStreamPtr stream);
65
67 void ReInit(QueryParserCharStreamPtr stream, int32_t lexState);
68
70 void SwitchTo(int32_t lexState);
71
73 QueryParserTokenPtr getNextToken();
74
75 protected:
76 int32_t jjStopStringLiteralDfa_3(int32_t pos, int64_t active0);
77 int32_t jjStartNfa_3(int32_t pos, int64_t active0);
78 int32_t jjStopAtPos(int32_t pos, int32_t kind);
79 int32_t jjMoveStringLiteralDfa0_3();
80 int32_t jjStartNfaWithStates_3(int32_t pos, int32_t kind, int32_t state);
81 int32_t jjMoveNfa_3(int32_t startState, int32_t curPos);
82 int32_t jjStopStringLiteralDfa_1(int32_t pos, int64_t active0);
83 int32_t jjStartNfa_1(int32_t pos, int64_t active0);
84 int32_t jjMoveStringLiteralDfa0_1();
85 int32_t jjMoveStringLiteralDfa1_1(int64_t active0);
86 int32_t jjStartNfaWithStates_1(int32_t pos, int32_t kind, int32_t state);
87 int32_t jjMoveNfa_1(int32_t startState, int32_t curPos);
88 int32_t jjMoveStringLiteralDfa0_0();
89 int32_t jjMoveNfa_0(int32_t startState, int32_t curPos);
90 int32_t jjStopStringLiteralDfa_2(int32_t pos, int64_t active0);
91 int32_t jjStartNfa_2(int32_t pos, int64_t active0);
92 int32_t jjMoveStringLiteralDfa0_2();
93 int32_t jjMoveStringLiteralDfa1_2(int64_t active0);
94 int32_t jjStartNfaWithStates_2(int32_t pos, int32_t kind, int32_t state);
95 int32_t jjMoveNfa_2(int32_t startState, int32_t curPos);
96
97 static bool jjCanMove_0(int32_t hiByte, int32_t i1, int32_t i2, int64_t l1, int64_t l2);
98 static bool jjCanMove_1(int32_t hiByte, int32_t i1, int32_t i2, int64_t l1, int64_t l2);
99 static bool jjCanMove_2(int32_t hiByte, int32_t i1, int32_t i2, int64_t l1, int64_t l2);
100
101 void ReInitRounds();
102 QueryParserTokenPtr jjFillToken();
103
104 void jjCheckNAdd(int32_t state);
105 void jjAddStates(int32_t start, int32_t end);
106 void jjCheckNAddTwoStates(int32_t state1, int32_t state2);
107 void jjCheckNAddStates(int32_t start, int32_t end);
108 };
109 }
110
111 #endif

clucene.sourceforge.net