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


 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 {
16  {
17  public:
19  QueryParserTokenManager(QueryParserCharStreamPtr stream, int32_t lexState);
20 
21  virtual ~QueryParserTokenManager();
22 
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 
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