⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 queryparsertokenmanager.cs

📁 Lucene.Net 版本源码 测试通过
💻 CS
📖 第 1 页 / 共 3 页
字号:
/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 * 
 * http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

/* Generated By:JavaCC: Do not edit this line. QueryParserTokenManager.java */

using System;

using Term = Lucene.Net.Index.Term;
using Lucene.Net.Analysis;
using Lucene.Net.Documents;
using Lucene.Net.Search;
using Searchable = Lucene.Net.Search.Searchable;
using Parameter = Lucene.Net.Util.Parameter;

namespace Lucene.Net.QueryParsers
{
	
	public class QueryParserTokenManager : QueryParserConstants
	{
		private void  InitBlock()
		{
			System.IO.StreamWriter temp_writer;
			temp_writer = new System.IO.StreamWriter(System.Console.OpenStandardOutput(), System.Console.Out.Encoding);
			temp_writer.AutoFlush = true;
			debugStream = temp_writer;
		}
		public System.IO.StreamWriter debugStream;
		public virtual void  SetDebugStream(System.IO.StreamWriter ds)
		{
			debugStream = ds;
		}
		private int JjStopStringLiteralDfa_3(int pos, long active0)
		{
			switch (pos)
			{
				
				default: 
					return - 1;
				
			}
		}
		private int JjStartNfa_3(int pos, long active0)
		{
			return JjMoveNfa_3(JjStopStringLiteralDfa_3(pos, active0), pos + 1);
		}
		private int JjStopAtPos(int pos, int kind)
		{
			jjmatchedKind = kind;
			jjmatchedPos = pos;
			return pos + 1;
		}
		private int JjStartNfaWithStates_3(int pos, int kind, int state)
		{
			jjmatchedKind = kind;
			jjmatchedPos = pos;
			try
			{
				curChar = input_stream.ReadChar();
			}
			catch (System.IO.IOException)
			{
				return pos + 1;
			}
			return JjMoveNfa_3(state, pos + 1);
		}
		private int JjMoveStringLiteralDfa0_3()
		{
			switch (curChar)
			{
				
				case (char) (40): 
					return JjStopAtPos(0, 12);
				
				case (char) (41): 
					return JjStopAtPos(0, 13);
				
				case (char) (42): 
					return JjStartNfaWithStates_3(0, 15, 37);
				
				case (char) (43): 
					return JjStopAtPos(0, 10);
				
				case (char) (45): 
					return JjStopAtPos(0, 11);
				
				case (char) (58): 
					return JjStopAtPos(0, 14);
				
				case (char) (91): 
					return JjStopAtPos(0, 22);
				
				case (char) (94): 
					return JjStopAtPos(0, 16);
				
				case (char) (123): 
					return JjStopAtPos(0, 23);
				
				default: 
					return JjMoveNfa_3(0, 0);
				
			}
		}
		private void  JjCheckNAdd(int state)
		{
			if (jjrounds[state] != jjround)
			{
				jjstateSet[jjnewStateCnt++] = state;
				jjrounds[state] = jjround;
			}
		}
		private void  JjAddStates(int start, int end)
		{
			do 
			{
				jjstateSet[jjnewStateCnt++] = jjnextStates[start];
			}
			while (start++ != end);
		}
		private void  JjCheckNAddTwoStates(int state1, int state2)
		{
			JjCheckNAdd(state1);
			JjCheckNAdd(state2);
		}
		private void  JjCheckNAddStates(int start, int end)
		{
			do 
			{
				JjCheckNAdd(jjnextStates[start]);
			}
			while (start++ != end);
		}
		private void  JjCheckNAddStates(int start)
		{
			JjCheckNAdd(jjnextStates[start]);
			JjCheckNAdd(jjnextStates[start + 1]);
		}
		internal static readonly ulong[] jjbitVec0 = new ulong[]{0xfffffffffffffffeL, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL};
		internal static readonly ulong[] jjbitVec2 = new ulong[]{0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL};
		private int JjMoveNfa_3(int startState, int curPos)
		{
			int[] nextStates;
			int startsAt = 0;
			jjnewStateCnt = 37;
			int i = 1;
			jjstateSet[0] = startState;
			int j, kind = 0x7fffffff;
			for (; ; )
			{
				if (++jjround == 0x7fffffff)
					ReInitRounds();
				if (curChar < 64)
				{
					ulong l = ((ulong) 1L) << curChar;

MatchLoop: 
					do 
					{
						switch (jjstateSet[--i])
						{
							
							case 37: 
								if ((0xfbfffcf8ffffd9ffL & l) != (ulong) 0L)
								{
									if (kind > 21)
										kind = 21;
									JjCheckNAddTwoStates(33, 34);
								}
								if ((0x7bfff8f8ffffd9ffL & l) != (ulong) 0L)
									JjCheckNAddStates(0, 2);
								else if (curChar == 42)
								{
									if (kind > 20)
										kind = 20;
								}
								break;
							
							case 0: 
								if ((0xfbffd4f8ffffd9ffL & l) != (ulong) 0L)
								{
									if (kind > 21)
										kind = 21;
									JjCheckNAddTwoStates(33, 34);
								}
								else if ((0x100002600L & l) != (ulong) 0L)
								{
									if (kind > 6)
										kind = 6;
								}
								else if (curChar == 34)
									JjCheckNAddTwoStates(15, 17);
								else if (curChar == 33)
								{
									if (kind > 9)
										kind = 9;
								}
								if ((0x7bffd4f8ffffd9ffL & l) != (ulong) 0L)
									JjCheckNAddStates(0, 2);
								if ((0x7bffd0f8ffffd9ffL & l) != (ulong) 0L)
								{
									if (kind > 18)
										kind = 18;
									JjCheckNAddTwoStates(20, 21);
								}
								if (curChar == 38)
									jjstateSet[jjnewStateCnt++] = 4;
								break;
							
							case 4: 
								if (curChar == 38 && kind > 7)
									kind = 7;
								break;
							
							case 5: 
								if (curChar == 38)
									jjstateSet[jjnewStateCnt++] = 4;
								break;
							
							case 13: 
								if (curChar == 33 && kind > 9)
									kind = 9;
								break;
							
							case 14: 
								if (curChar == 34)
									JjCheckNAddTwoStates(15, 17);
								break;
							
							case 15: 
								if ((0xfffffffbffffffffL & l) != (ulong) 0L)
									JjCheckNAddStates(3, 5);
								break;
							
							case 16: 
								if (curChar == 34)
									JjCheckNAddStates(3, 5);
								break;
							
							case 18: 
								if (curChar == 34 && kind > 17)
									kind = 17;
								break;
							
							case 19: 
								if ((0x7bffd0f8ffffd9ffL & l) == (ulong) 0L)
									break;
								if (kind > 18)
									kind = 18;
								JjCheckNAddTwoStates(20, 21);
								break;
							
							case 20: 
								if ((0x7bfff8f8ffffd9ffL & l) == (ulong) 0L)
									break;
								if (kind > 18)
									kind = 18;
								JjCheckNAddTwoStates(20, 21);
								break;
							
							case 22: 
								if ((0x84002f0600000000L & l) == (ulong) 0L)
									break;
								if (kind > 18)
									kind = 18;
								JjCheckNAddTwoStates(20, 21);
								break;
							
							case 24: 
								if ((0x3ff000000000000L & l) == (ulong) 0L)
									break;
								if (kind > 19)
									kind = 19;
								JjAddStates(6, 7);
								break;
							
							case 25: 
								if (curChar == 46)
									JjCheckNAdd(26);
								break;
							
							case 26: 
								if ((0x3ff000000000000L & l) == (ulong) 0L)
									break;
								if (kind > 19)
									kind = 19;
								JjCheckNAdd(26);
								break;
							
							case 27: 
								if ((0x7bffd4f8ffffd9ffL & l) != (ulong) 0L)
									JjCheckNAddStates(0, 2);
								break;
							
							case 28: 
								if ((0x7bfff8f8ffffd9ffL & l) != (ulong) 0L)
									JjCheckNAddStates(0, 2);
								break;
							
							case 29: 
								if (curChar == 42 && kind > 20)
									kind = 20;
								break;
							
							case 31: 
								if ((0x84002f0600000000L & l) != (ulong) 0L)
									JjCheckNAddStates(0, 2);
								break;
							
							case 32: 
								if ((0xfbffd4f8ffffd9ffL & l) == (ulong) 0L)
									break;
								if (kind > 21)
									kind = 21;
								JjCheckNAddTwoStates(33, 34);
								break;
							
							case 33: 
								if ((0xfbfffcf8ffffd9ffL & l) == (ulong) 0L)
									break;
								if (kind > 21)
									kind = 21;
								JjCheckNAddTwoStates(33, 34);
								break;
							
							case 35: 
								if ((0x84002f0600000000L & l) == (ulong) 0L)
									break;
								if (kind > 21)
									kind = 21;
								JjCheckNAddTwoStates(33, 34);
								break;
							
							default:  break;
							
						}
					}
					while (i != startsAt);
				}
				else if (curChar < 128)
				{
					ulong l = ((ulong) 1L) << (curChar & 63);

MatchLoop1: 
					do 
					{
						switch (jjstateSet[--i])
						{
							
							case 37: 
								if ((0x97ffffff97ffffffL & l) != (ulong) 0L)
								{
									if (kind > 21)
										kind = 21;
									JjCheckNAddTwoStates(33, 34);
								}
								if ((0x97ffffff97ffffffL & l) != (ulong) 0L)
									JjCheckNAddStates(0, 2);
								if (curChar == 92)
									JjCheckNAddTwoStates(31, 31);
								if (curChar == 92)
									JjCheckNAddTwoStates(35, 35);
								break;
							
							case 0: 
								if ((0x97ffffff97ffffffL & l) != (ulong) 0L)
								{
									if (kind > 21)
										kind = 21;
									JjCheckNAddTwoStates(33, 34);
								}
								else if (curChar == 126)
								{
									if (kind > 19)
										kind = 19;
									jjstateSet[jjnewStateCnt++] = 24;
								}
								if ((0x97ffffff97ffffffL & l) != (ulong) 0L)
									JjCheckNAddStates(0, 2);
								if ((0x97ffffff97ffffffL & l) != (ulong) 0L)
								{
									if (kind > 18)
										kind = 18;
									JjCheckNAddTwoStates(20, 21);
								}
								if (curChar == 92)
									JjCheckNAddStates(8, 10);
								else if (curChar == 78)
									jjstateSet[jjnewStateCnt++] = 11;
								else if (curChar == 124)
									jjstateSet[jjnewStateCnt++] = 8;
								else if (curChar == 79)
									jjstateSet[jjnewStateCnt++] = 6;
								else if (curChar == 65)
									jjstateSet[jjnewStateCnt++] = 2;
								break;
							
							case 1: 
								if (curChar == 68 && kind > 7)
									kind = 7;
								break;
							
							case 2: 
								if (curChar == 78)
									jjstateSet[jjnewStateCnt++] = 1;
								break;
							
							case 3: 
								if (curChar == 65)
									jjstateSet[jjnewStateCnt++] = 2;
								break;
							
							case 6: 
								if (curChar == 82 && kind > 8)
									kind = 8;
								break;
							
							case 7: 
								if (curChar == 79)
									jjstateSet[jjnewStateCnt++] = 6;
								break;
							
							case 8: 
								if (curChar == 124 && kind > 8)
									kind = 8;
								break;
							
							case 9: 
								if (curChar == 124)
									jjstateSet[jjnewStateCnt++] = 8;
								break;
							
							case 10: 
								if (curChar == 84 && kind > 9)
									kind = 9;
								break;
							
							case 11: 
								if (curChar == 79)
									jjstateSet[jjnewStateCnt++] = 10;
								break;
							
							case 12: 
								if (curChar == 78)
									jjstateSet[jjnewStateCnt++] = 11;
								break;
							
							case 15: 
								JjAddStates(3, 5);
								break;
							
							case 17: 
								if (curChar == 92)
									jjstateSet[jjnewStateCnt++] = 16;
								break;
							
							case 19: 
							case 20: 
								if ((0x97ffffff97ffffffL & l) == (ulong) 0L)
									break;
								if (kind > 18)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -