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

📄 standardtokenizertokenmanager.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. StandardTokenizerTokenManager.java */
using System;

namespace Lucene.Net.Analysis.Standard
{
	
	public class StandardTokenizerTokenManager : StandardTokenizerConstants
	{
        /// <summary>By default, closes the input Reader. </summary>
        public void Close()
        { 
            debugStream.Close(); 
            input_stream.Done(); 
        }

        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 JjMoveStringLiteralDfa0_0()
		{
			return JjMoveNfa_0(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[]{0xfff0000000000000L, 0xffffffffffffdfffL, 0xffffffffL, 0x600000000000000L};
		internal static readonly ulong[] jjbitVec2 = new ulong[]{0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL};
		internal static readonly ulong[] jjbitVec3 = new ulong[]{0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffL, 0xffff000000000000L};
		internal static readonly ulong[] jjbitVec4 = new ulong[]{0xffffffffffffffffL, 0xffffffffffffffffL, 0x0L, 0x0L};
		internal static readonly ulong[] jjbitVec5 = new ulong[]{0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL, 0x0L};
		internal static readonly ulong[] jjbitVec6 = new ulong[]{0x0L, 0xffffffe000000000L, 0xffffffffL, 0x0L};
		internal static readonly ulong[] jjbitVec7 = new ulong[]{0x20000L, 0x0L, 0xfffff00000000000L, 0x7fffffL};
		internal static readonly ulong[] jjbitVec8 = new ulong[]{0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffL, 0x0L};
		internal static readonly ulong[] jjbitVec9 = new ulong[]{0xfffffffeL, 0x0L, 0x0L, 0x0L};
		internal static readonly ulong[] jjbitVec10 = new ulong[]{0x0L, 0x0L, 0x0L, 0xff7fffffff7fffffL};
		internal static readonly ulong[] jjbitVec11 = new ulong[]{0x0L, 0x0L, 0xffffffff00000000L, 0x1fffffffL};
		internal static readonly ulong[] jjbitVec12 = new ulong[]{0x1600L, 0x0L, 0x0L, 0x0L};
		internal static readonly ulong[] jjbitVec13 = new ulong[]{0x0L, 0xffc000000000L, 0x0L, 0xffc000000000L};
		internal static readonly ulong[] jjbitVec14 = new ulong[]{0x0L, 0x3ff00000000L, 0x0L, 0x3ff000000000000L};
		internal static readonly ulong[] jjbitVec15 = new ulong[]{0x0L, 0xffc000000000L, 0x0L, 0xff8000000000L};
		internal static readonly ulong[] jjbitVec16 = new ulong[]{0x0L, 0xffc000000000L, 0x0L, 0x0L};
		internal static readonly ulong[] jjbitVec17 = new ulong[]{0x0L, 0x3ff0000L, 0x0L, 0x3ff0000L};
		internal static readonly ulong[] jjbitVec18 = new ulong[]{0x0L, 0x3ffL, 0x0L, 0x0L};
		internal static readonly ulong[] jjbitVec19 = new ulong[]{0xfffffffeL, 0x0L, 0xfffff00000000000L, 0x7fffffL};
		private int JjMoveNfa_0(int startState, int curPos)
		{
			int[] nextStates;
			int startsAt = 0;
			jjnewStateCnt = 75;
			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 0: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
								{
									if (kind > 1)
										kind = 1;
									JjCheckNAddStates(0, 11);
								}
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddStates(12, 17);
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddStates(18, 23);
								break;
							
							case 2: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddStates(18, 23);
								break;
							
							case 3: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(3, 4);
								break;
							
							case 4: 
							case 5: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(5, 6);
								break;
							
							case 6: 
								if ((0xf00000000000L & l) != (ulong) 0L)
									JjCheckNAdd(7);
								break;
							
							case 7: 
								if ((0x3ff000000000000L & l) == (ulong) 0L)
									break;
								if (kind > 7)
									kind = 7;
								JjCheckNAdd(7);
								break;
							
							case 8: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(8, 9);
								break;
							
							case 9: 
							case 10: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(10, 11);
								break;
							
							case 11: 
								if ((0xf00000000000L & l) != (ulong) 0L)
									JjCheckNAdd(12);
								break;
							
							case 12: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(12, 13);
								break;
							
							case 13: 
								if ((0xf00000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(14, 15);
								break;
							
							case 14: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(14, 15);
								break;
							
							case 15: 
							case 16: 
								if ((0x3ff000000000000L & l) == (ulong) 0L)
									break;
								if (kind > 7)
									kind = 7;
								JjCheckNAddTwoStates(11, 16);
								break;
							
							case 17: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(17, 18);
								break;
							
							case 18: 
							case 19: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(19, 20);
								break;
							
							case 20: 
								if ((0xf00000000000L & l) != (ulong) 0L)
									JjCheckNAdd(21);
								break;
							
							case 21: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(21, 22);
								break;
							
							case 22: 
								if ((0xf00000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(23, 24);
								break;
							
							case 23: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(23, 24);
								break;
							
							case 24: 
							case 25: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(25, 26);
								break;
							
							case 26: 
								if ((0xf00000000000L & l) != (ulong) 0L)
									JjCheckNAdd(27);
								break;
							
							case 27: 
								if ((0x3ff000000000000L & l) == (ulong) 0L)
									break;
								if (kind > 7)
									kind = 7;
								JjCheckNAddTwoStates(22, 27);
								break;
							
							case 28: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddStates(12, 17);
								break;
							
							case 29: 
								if ((0x3ff000000000000L & l) == (ulong) 0L)
									break;
								if (kind > 1)
									kind = 1;
								JjCheckNAddStates(0, 11);
								break;
							
							case 30: 
								if ((0x3ff000000000000L & l) == (ulong) 0L)
									break;
								if (kind > 1)
									kind = 1;
								JjCheckNAdd(30);
								break;
							
							case 31: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddStates(24, 26);
								break;
							
							case 32: 
								if ((0x600000000000L & l) != (ulong) 0L)
									JjCheckNAdd(33);
								break;
							
							case 33: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddStates(27, 29);
								break;
							
							case 35: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(35, 36);
								break;
							
							case 36: 
								if ((0x600000000000L & l) != (ulong) 0L)
									JjCheckNAdd(37);
								break;
							
							case 37: 
								if ((0x3ff000000000000L & l) == (ulong) 0L)
									break;
								if (kind > 5)
									kind = 5;
								JjCheckNAddTwoStates(36, 37);
								break;
							
							case 38: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(38, 39);
								break;
							
							case 39: 
								if (curChar == 46)
									JjCheckNAdd(40);
								break;
							
							case 40: 
								if ((0x3ff000000000000L & l) == (ulong) 0L)
									break;
								if (kind > 6)
									kind = 6;
								JjCheckNAddTwoStates(39, 40);
								break;
							
							case 41: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(41, 42);
								break;
							
							case 42: 
								if ((0xf00000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(43, 44);
								break;
							
							case 43: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(43, 44);
								break;
							
							case 44: 
							case 45: 
								if ((0x3ff000000000000L & l) == (ulong) 0L)
									break;
								if (kind > 7)
									kind = 7;
								JjCheckNAdd(45);
								break;
							
							case 46: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(46, 47);
								break;
							
							case 47: 
								if ((0xf00000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(48, 49);
								break;
							
							case 48: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(48, 49);
								break;
							
							case 49: 
							case 50: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(50, 51);
								break;
							
							case 51: 
								if ((0xf00000000000L & l) != (ulong) 0L)
									JjCheckNAdd(52);
								break;
							
							case 52: 
								if ((0x3ff000000000000L & l) == (ulong) 0L)
									break;
								if (kind > 7)
									kind = 7;
								JjCheckNAddTwoStates(47, 52);
								break;
							
							case 53: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(53, 54);
								break;
							
							case 54: 
								if ((0xf00000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(55, 56);
								break;
							
							case 55: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(55, 56);
								break;
							
							case 56: 
							case 57: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(57, 58);
								break;
							
							case 58: 
								if ((0xf00000000000L & l) != (ulong) 0L)
									JjCheckNAdd(59);
								break;
							
							case 59: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(59, 60);
								break;
							
							case 60: 
								if ((0xf00000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(61, 62);
								break;
							
							case 61: 
								if ((0x3ff000000000000L & l) != (ulong) 0L)
									JjCheckNAddTwoStates(61, 62);
								break;
							
							case 62: 
							case 63: 
								if ((0x3ff000000000000L & l) == (ulong) 0L)
									break;
								if (kind > 7)
									kind = 7;
								JjCheckNAddTwoStates(58, 63);
								break;
							
							case 66: 
								if (curChar == 39)
									jjstateSet[jjnewStateCnt++] = 67;
								break;
							
							case 69: 
								if (curChar == 46)
									JjCheckNAdd(70);
								break;
							
							case 71: 
								if (curChar != 46)
									break;
								if (kind > 3)
									kind = 3;
								JjCheckNAdd(70);
								break;
							
							case 73: 
								if (curChar == 38)
									jjstateSet[jjnewStateCnt++] = 74;
								break;
							
							default:  break;
							
						}
					}
					while (i != startsAt);
				}
				else if (curChar < 128)
				{
					ulong l = ((ulong) 1L) << (curChar & 63);

MatchLoop1: 
					do 
					{
						switch (jjstateSet[--i])
						{
							
							case 0: 
								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
									JjCheckNAddStates(30, 35);
								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
								{
									if (kind > 1)
										kind = 1;
									JjCheckNAddStates(0, 11);
								}
								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)

⌨️ 快捷键说明

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