lucenenet-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From aro...@apache.org
Subject svn commit: r411501 [7/30] - in /incubator/lucene.net/trunk/C#/src: ./ Demo/DeleteFiles/ Demo/DemoLib/ Demo/DemoLib/HTML/ Demo/IndexFiles/ Demo/IndexHtml/ Demo/SearchFiles/ Lucene.Net/ Lucene.Net/Analysis/ Lucene.Net/Analysis/Standard/ Lucene.Net/Docum...
Date Sun, 04 Jun 2006 02:41:25 GMT
Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Standard/StandardTokenizerTokenManager.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Analysis/Standard/StandardTokenizerTokenManager.cs?rev=411501&r1=411500&r2=411501&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Standard/StandardTokenizerTokenManager.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Standard/StandardTokenizerTokenManager.cs Sat Jun  3 19:41:13 2006
@@ -13,15 +13,17 @@
  * 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() 
+        public void Close()
         { 
             debugStream.Close(); 
             input_stream.Done(); 
@@ -82,32 +84,37 @@
 		internal static readonly ulong[] jjbitVec3 = new ulong[]{0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffL, 0x0L};
 		internal static readonly ulong[] jjbitVec4 = new ulong[]{0xffffffffffffffffL, 0xffffffffffffffffL, 0x0L, 0x0L};
 		internal static readonly ulong[] jjbitVec5 = new ulong[]{0x3fffffffffffL, 0x0L, 0x0L, 0x0L};
-		internal static readonly ulong[] jjbitVec6 = new ulong[]{0x1600L, 0x0L, 0x0L, 0x0L};
-		internal static readonly ulong[] jjbitVec7 = new ulong[]{0x0L, 0xffc000000000L, 0x0L, 0xffc000000000L};
-		internal static readonly ulong[] jjbitVec8 = new ulong[]{0x0L, 0x3ff00000000L, 0x0L, 0x3ff000000000000L};
-		internal static readonly ulong[] jjbitVec9 = new ulong[]{0x0L, 0xffc000000000L, 0x0L, 0xff8000000000L};
-		internal static readonly ulong[] jjbitVec10 = new ulong[]{0x0L, 0xffc000000000L, 0x0L, 0x0L};
-		internal static readonly ulong[] jjbitVec11 = new ulong[]{0x0L, 0x3ff0000L, 0x0L, 0x3ff0000L};
-		internal static readonly ulong[] jjbitVec12 = new ulong[]{0x0L, 0x3ffL, 0x0L, 0x0L};
-		internal static readonly ulong[] jjbitVec13 = new ulong[]{0xfffffffeL, 0x0L, 0x0L, 0x0L};
-		internal static readonly ulong[] jjbitVec14 = new ulong[]{0x0L, 0x0L, 0x0L, 0xff7fffffff7fffffL};
+		internal static readonly ulong[] jjbitVec6 = new ulong[]{0x0L, 0x0L, 0xfffff00000000000L, 0x7fffffL};
+		internal static readonly ulong[] jjbitVec7 = new ulong[]{0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffL, 0x0L};
+		internal static readonly ulong[] jjbitVec8 = new ulong[]{0xfffffffeL, 0x0L, 0x0L, 0x0L};
+		internal static readonly ulong[] jjbitVec9 = new ulong[]{0x0L, 0x0L, 0x0L, 0xff7fffffff7fffffL};
+		internal static readonly ulong[] jjbitVec10 = new ulong[]{0x1600L, 0x0L, 0x0L, 0x0L};
+		internal static readonly ulong[] jjbitVec11 = new ulong[]{0x0L, 0xffc000000000L, 0x0L, 0xffc000000000L};
+		internal static readonly ulong[] jjbitVec12 = new ulong[]{0x0L, 0x3ff00000000L, 0x0L, 0x3ff000000000000L};
+		internal static readonly ulong[] jjbitVec13 = new ulong[]{0x0L, 0xffc000000000L, 0x0L, 0xff8000000000L};
+		internal static readonly ulong[] jjbitVec14 = new ulong[]{0x0L, 0xffc000000000L, 0x0L, 0x0L};
+		internal static readonly ulong[] jjbitVec15 = new ulong[]{0x0L, 0x3ff0000L, 0x0L, 0x3ff0000L};
+		internal static readonly ulong[] jjbitVec16 = new ulong[]{0x0L, 0x3ffL, 0x0L, 0x0L};
+		internal static readonly ulong[] jjbitVec17 = new ulong[]{0xfffffffeL, 0x0L, 0xfffff00000000000L, 0x7fffffL};
 		private int JjMoveNfa_0(int startState, int curPos)
 		{
+			int[] nextStates;
 			int startsAt = 0;
-			jjnewStateCnt = 73;
-			int ii = 1;
+			jjnewStateCnt = 75;
+			int i = 1;
 			jjstateSet[0] = startState;
-			int kind = 0x7fffffff;
+			int j, kind = 0x7fffffff;
 			for (; ; )
 			{
 				if (++jjround == 0x7fffffff)
 					ReInitRounds();
 				if (curChar < 64)
 				{
-					ulong l = ((ulong) 1L) << curChar;
+                    ulong l = ((ulong) 1L) << curChar;
+MatchLoop: 
 					do 
 					{
-						switch (jjstateSet[--ii])
+						switch (jjstateSet[--i])
 						{
 							
 							case 0: 
@@ -115,38 +122,26 @@
 								{
 									if (kind > 1)
 										kind = 1;
-									JjCheckNAddStates(0, 17);
+									JjCheckNAddStates(0, 11);
 								}
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddStates(18, 23);
-								break;
-							
-							case 1: 
+									JjCheckNAddStates(12, 17);
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
 									JjCheckNAddStates(18, 23);
 								break;
 							
 							case 2: 
-							case 39: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(2, 3);
+									JjCheckNAddStates(18, 23);
 								break;
 							
 							case 3: 
-								if ((0xf00000000000L & l) != (ulong) 0L)
-									JjCheckNAdd(4);
+								if ((0x3ff000000000000L & l) != (ulong) 0L)
+									JjCheckNAddTwoStates(3, 4);
 								break;
 							
 							case 4: 
-								if ((0x3ff000000000000L & l) == (ulong) 0L)
-									break;
-								if (kind > 7)
-									kind = 7;
-								JjCheckNAdd(4);
-								break;
-							
 							case 5: 
-							case 48: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
 									JjCheckNAddTwoStates(5, 6);
 								break;
@@ -157,38 +152,37 @@
 								break;
 							
 							case 7: 
-								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(7, 8);
+								if ((0x3ff000000000000L & l) == (ulong) 0L)
+									break;
+								if (kind > 7)
+									kind = 7;
+								JjCheckNAdd(7);
 								break;
 							
 							case 8: 
-								if ((0xf00000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(9, 10);
+								if ((0x3ff000000000000L & l) != (ulong) 0L)
+									JjCheckNAddTwoStates(8, 9);
 								break;
 							
 							case 9: 
+							case 10: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(9, 10);
+									JjCheckNAddTwoStates(10, 11);
 								break;
 							
-							case 10: 
 							case 11: 
-								if ((0x3ff000000000000L & l) == (ulong) 0L)
-									break;
-								if (kind > 7)
-									kind = 7;
-								JjCheckNAddTwoStates(6, 11);
+								if ((0xf00000000000L & l) != (ulong) 0L)
+									JjCheckNAdd(12);
 								break;
 							
 							case 12: 
-							case 61: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
 									JjCheckNAddTwoStates(12, 13);
 								break;
 							
 							case 13: 
 								if ((0xf00000000000L & l) != (ulong) 0L)
-									JjCheckNAdd(14);
+									JjCheckNAddTwoStates(14, 15);
 								break;
 							
 							case 14: 
@@ -197,259 +191,280 @@
 								break;
 							
 							case 15: 
-								if ((0xf00000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(16, 17);
+							case 16: 
+								if ((0x3ff000000000000L & l) == (ulong) 0L)
+									break;
+								if (kind > 7)
+									kind = 7;
+								JjCheckNAddTwoStates(11, 16);
 								break;
 							
-							case 16: 
+							case 17: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(16, 17);
+									JjCheckNAddTwoStates(17, 18);
 								break;
 							
-							case 17: 
 							case 18: 
+							case 19: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(18, 19);
+									JjCheckNAddTwoStates(19, 20);
 								break;
 							
-							case 19: 
+							case 20: 
 								if ((0xf00000000000L & l) != (ulong) 0L)
-									JjCheckNAdd(20);
+									JjCheckNAdd(21);
 								break;
 							
-							case 20: 
+							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(15, 20);
+								JjCheckNAddTwoStates(22, 27);
 								break;
 							
-							case 21: 
+							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, 17);
+								JjCheckNAddStates(0, 11);
 								break;
 							
-							case 22: 
+							case 30: 
 								if ((0x3ff000000000000L & l) == (ulong) 0L)
 									break;
 								if (kind > 1)
 									kind = 1;
-								JjCheckNAdd(22);
+								JjCheckNAdd(30);
 								break;
 							
-							case 23: 
+							case 31: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
 									JjCheckNAddStates(24, 26);
 								break;
 							
-							case 24: 
+							case 32: 
 								if ((0x600000000000L & l) != (ulong) 0L)
-									JjCheckNAdd(25);
+									JjCheckNAdd(33);
 								break;
 							
-							case 25: 
+							case 33: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
 									JjCheckNAddStates(27, 29);
 								break;
 							
-							case 27: 
+							case 35: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(27, 28);
+									JjCheckNAddTwoStates(35, 36);
 								break;
 							
-							case 28: 
+							case 36: 
 								if ((0x600000000000L & l) != (ulong) 0L)
-									JjCheckNAdd(29);
+									JjCheckNAdd(37);
 								break;
 							
-							case 29: 
+							case 37: 
 								if ((0x3ff000000000000L & l) == (ulong) 0L)
 									break;
 								if (kind > 5)
 									kind = 5;
-								JjCheckNAddTwoStates(28, 29);
+								JjCheckNAddTwoStates(36, 37);
 								break;
 							
-							case 30: 
+							case 38: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(30, 31);
+									JjCheckNAddTwoStates(38, 39);
 								break;
 							
-							case 31: 
+							case 39: 
 								if (curChar == 46)
-									JjCheckNAdd(32);
+									JjCheckNAdd(40);
 								break;
 							
-							case 32: 
+							case 40: 
 								if ((0x3ff000000000000L & l) == (ulong) 0L)
 									break;
 								if (kind > 6)
 									kind = 6;
-								JjCheckNAddTwoStates(31, 32);
+								JjCheckNAddTwoStates(39, 40);
 								break;
 							
-							case 33: 
+							case 41: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(33, 34);
+									JjCheckNAddTwoStates(41, 42);
 								break;
 							
-							case 34: 
+							case 42: 
 								if ((0xf00000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(35, 36);
+									JjCheckNAddTwoStates(43, 44);
 								break;
 							
-							case 35: 
+							case 43: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(35, 36);
+									JjCheckNAddTwoStates(43, 44);
 								break;
 							
-							case 36: 
-							case 37: 
+							case 44: 
+							case 45: 
 								if ((0x3ff000000000000L & l) == (ulong) 0L)
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAdd(37);
-								break;
-							
-							case 38: 
-								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(38, 39);
+								JjCheckNAdd(45);
 								break;
 							
-							case 40: 
+							case 46: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(40, 41);
+									JjCheckNAddTwoStates(46, 47);
 								break;
 							
-							case 41: 
+							case 47: 
 								if ((0xf00000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(42, 43);
+									JjCheckNAddTwoStates(48, 49);
 								break;
 							
-							case 42: 
+							case 48: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(42, 43);
+									JjCheckNAddTwoStates(48, 49);
 								break;
 							
-							case 43: 
-							case 44: 
+							case 49: 
+							case 50: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(44, 45);
+									JjCheckNAddTwoStates(50, 51);
 								break;
 							
-							case 45: 
+							case 51: 
 								if ((0xf00000000000L & l) != (ulong) 0L)
-									JjCheckNAdd(46);
+									JjCheckNAdd(52);
 								break;
 							
-							case 46: 
+							case 52: 
 								if ((0x3ff000000000000L & l) == (ulong) 0L)
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAddTwoStates(41, 46);
+								JjCheckNAddTwoStates(47, 52);
 								break;
 							
-							case 47: 
-								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(47, 48);
-								break;
-							
-							case 49: 
+							case 53: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(49, 50);
+									JjCheckNAddTwoStates(53, 54);
 								break;
 							
-							case 50: 
+							case 54: 
 								if ((0xf00000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(51, 52);
+									JjCheckNAddTwoStates(55, 56);
 								break;
 							
-							case 51: 
+							case 55: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(51, 52);
+									JjCheckNAddTwoStates(55, 56);
 								break;
 							
-							case 52: 
-							case 53: 
+							case 56: 
+							case 57: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(53, 54);
+									JjCheckNAddTwoStates(57, 58);
 								break;
 							
-							case 54: 
+							case 58: 
 								if ((0xf00000000000L & l) != (ulong) 0L)
-									JjCheckNAdd(55);
+									JjCheckNAdd(59);
 								break;
 							
-							case 55: 
+							case 59: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(55, 56);
+									JjCheckNAddTwoStates(59, 60);
 								break;
 							
-							case 56: 
+							case 60: 
 								if ((0xf00000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(57, 58);
+									JjCheckNAddTwoStates(61, 62);
 								break;
 							
-							case 57: 
+							case 61: 
 								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(57, 58);
+									JjCheckNAddTwoStates(61, 62);
 								break;
 							
-							case 58: 
-							case 59: 
+							case 62: 
+							case 63: 
 								if ((0x3ff000000000000L & l) == (ulong) 0L)
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAddTwoStates(54, 59);
-								break;
-							
-							case 60: 
-								if ((0x3ff000000000000L & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(60, 61);
+								JjCheckNAddTwoStates(58, 63);
 								break;
 							
-							case 64: 
+							case 66: 
 								if (curChar == 39)
-									jjstateSet[jjnewStateCnt++] = 65;
+									jjstateSet[jjnewStateCnt++] = 67;
 								break;
 							
-							case 67: 
+							case 69: 
 								if (curChar == 46)
-									JjCheckNAdd(68);
+									JjCheckNAdd(70);
 								break;
 							
-							case 69: 
+							case 71: 
 								if (curChar != 46)
 									break;
 								if (kind > 3)
 									kind = 3;
-								JjCheckNAdd(68);
+								JjCheckNAdd(70);
 								break;
 							
-							case 71: 
+							case 73: 
 								if (curChar == 38)
-									jjstateSet[jjnewStateCnt++] = 72;
+									jjstateSet[jjnewStateCnt++] = 74;
 								break;
 							
 							default:  break;
 							
 						}
 					}
-					while (ii != startsAt);
+					while (i != startsAt);
 				}
 				else if (curChar < 128)
 				{
 					ulong l = ((ulong) 1L) << (curChar & 63);
+MatchLoop1: 
 					do 
 					{
-						switch (jjstateSet[--ii])
+						switch (jjstateSet[--i])
 						{
 							
 							case 0: 
@@ -459,336 +474,343 @@
 								{
 									if (kind > 1)
 										kind = 1;
-									JjCheckNAddStates(0, 17);
+									JjCheckNAddStates(0, 11);
 								}
+								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
+									JjCheckNAddStates(18, 23);
 								break;
 							
 							case 2: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjAddStates(36, 37);
+									JjCheckNAddStates(18, 23);
 								break;
 							
 							case 3: 
+								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
+									JjCheckNAddTwoStates(3, 4);
+								break;
+							
+							case 5: 
+								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
+									JjAddStates(36, 37);
+								break;
+							
+							case 6: 
 								if (curChar == 95)
-									JjCheckNAdd(4);
+									JjCheckNAdd(7);
 								break;
 							
-							case 4: 
+							case 7: 
 								if ((0x7fffffe07fffffeL & l) == (ulong) 0L)
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAdd(4);
+								JjCheckNAdd(7);
 								break;
 							
-							case 5: 
+							case 8: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(5, 6);
+									JjCheckNAddTwoStates(8, 9);
 								break;
 							
-							case 6: 
+							case 10: 
+								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
+									JjCheckNAddTwoStates(10, 11);
+								break;
+							
+							case 11: 
 								if (curChar == 95)
-									JjCheckNAdd(7);
+									JjCheckNAdd(12);
 								break;
 							
-							case 7: 
+							case 12: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(7, 8);
+									JjCheckNAddTwoStates(12, 13);
 								break;
 							
-							case 8: 
+							case 13: 
 								if (curChar == 95)
-									JjCheckNAddTwoStates(9, 10);
+									JjCheckNAddTwoStates(14, 15);
 								break;
 							
-							case 9: 
+							case 14: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(9, 10);
+									JjCheckNAddTwoStates(14, 15);
 								break;
 							
-							case 11: 
+							case 16: 
 								if ((0x7fffffe07fffffeL & l) == (ulong) 0L)
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAddTwoStates(6, 11);
+								JjCheckNAddTwoStates(11, 16);
 								break;
 							
-							case 12: 
+							case 17: 
+								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
+									JjCheckNAddTwoStates(17, 18);
+								break;
+							
+							case 19: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
 									JjAddStates(38, 39);
 								break;
 							
-							case 13: 
+							case 20: 
 								if (curChar == 95)
-									JjCheckNAdd(14);
+									JjCheckNAdd(21);
 								break;
 							
-							case 14: 
+							case 21: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(14, 15);
+									JjCheckNAddTwoStates(21, 22);
 								break;
 							
-							case 15: 
+							case 22: 
 								if (curChar == 95)
-									JjCheckNAddTwoStates(16, 17);
+									JjCheckNAddTwoStates(23, 24);
 								break;
 							
-							case 16: 
+							case 23: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(16, 17);
+									JjCheckNAddTwoStates(23, 24);
 								break;
 							
-							case 18: 
+							case 25: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
 									JjAddStates(40, 41);
 								break;
 							
-							case 19: 
+							case 26: 
 								if (curChar == 95)
-									JjCheckNAdd(20);
+									JjCheckNAdd(27);
 								break;
 							
-							case 20: 
+							case 27: 
 								if ((0x7fffffe07fffffeL & l) == (ulong) 0L)
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAddTwoStates(15, 20);
+								JjCheckNAddTwoStates(22, 27);
 								break;
 							
-							case 21: 
+							case 29: 
 								if ((0x7fffffe07fffffeL & l) == (ulong) 0L)
 									break;
 								if (kind > 1)
 									kind = 1;
-								JjCheckNAddStates(0, 17);
+								JjCheckNAddStates(0, 11);
 								break;
 							
-							case 22: 
+							case 30: 
 								if ((0x7fffffe07fffffeL & l) == (ulong) 0L)
 									break;
 								if (kind > 1)
 									kind = 1;
-								JjCheckNAdd(22);
+								JjCheckNAdd(30);
 								break;
 							
-							case 23: 
+							case 31: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
 									JjCheckNAddStates(24, 26);
 								break;
 							
-							case 24: 
+							case 32: 
 								if (curChar == 95)
-									JjCheckNAdd(25);
+									JjCheckNAdd(33);
 								break;
 							
-							case 25: 
+							case 33: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
 									JjCheckNAddStates(27, 29);
 								break;
 							
-							case 26: 
+							case 34: 
 								if (curChar == 64)
-									JjCheckNAdd(27);
+									JjCheckNAdd(35);
 								break;
 							
-							case 27: 
+							case 35: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(27, 28);
+									JjCheckNAddTwoStates(35, 36);
 								break;
 							
-							case 29: 
+							case 37: 
 								if ((0x7fffffe07fffffeL & l) == (ulong) 0L)
 									break;
 								if (kind > 5)
 									kind = 5;
-								JjCheckNAddTwoStates(28, 29);
+								JjCheckNAddTwoStates(36, 37);
 								break;
 							
-							case 30: 
+							case 38: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(30, 31);
+									JjCheckNAddTwoStates(38, 39);
 								break;
 							
-							case 32: 
+							case 40: 
 								if ((0x7fffffe07fffffeL & l) == (ulong) 0L)
 									break;
 								if (kind > 6)
 									kind = 6;
-								JjCheckNAddTwoStates(31, 32);
+								JjCheckNAddTwoStates(39, 40);
 								break;
 							
-							case 33: 
+							case 41: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(33, 34);
+									JjCheckNAddTwoStates(41, 42);
 								break;
 							
-							case 34: 
+							case 42: 
 								if (curChar == 95)
-									JjCheckNAddTwoStates(35, 36);
+									JjCheckNAddTwoStates(43, 44);
 								break;
 							
-							case 35: 
+							case 43: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(35, 36);
+									JjCheckNAddTwoStates(43, 44);
 								break;
 							
-							case 37: 
+							case 45: 
 								if ((0x7fffffe07fffffeL & l) == (ulong) 0L)
 									break;
 								if (kind > 7)
 									kind = 7;
-								jjstateSet[jjnewStateCnt++] = 37;
-								break;
-							
-							case 38: 
-								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(38, 39);
+								jjstateSet[jjnewStateCnt++] = 45;
 								break;
 							
-							case 40: 
+							case 46: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(40, 41);
+									JjCheckNAddTwoStates(46, 47);
 								break;
 							
-							case 41: 
+							case 47: 
 								if (curChar == 95)
-									JjCheckNAddTwoStates(42, 43);
+									JjCheckNAddTwoStates(48, 49);
 								break;
 							
-							case 42: 
+							case 48: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(42, 43);
+									JjCheckNAddTwoStates(48, 49);
 								break;
 							
-							case 44: 
+							case 50: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
 									JjAddStates(42, 43);
 								break;
 							
-							case 45: 
+							case 51: 
 								if (curChar == 95)
-									JjCheckNAdd(46);
+									JjCheckNAdd(52);
 								break;
 							
-							case 46: 
+							case 52: 
 								if ((0x7fffffe07fffffeL & l) == (ulong) 0L)
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAddTwoStates(41, 46);
-								break;
-							
-							case 47: 
-								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(47, 48);
+								JjCheckNAddTwoStates(47, 52);
 								break;
 							
-							case 49: 
+							case 53: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(49, 50);
+									JjCheckNAddTwoStates(53, 54);
 								break;
 							
-							case 50: 
+							case 54: 
 								if (curChar == 95)
-									JjCheckNAddTwoStates(51, 52);
+									JjCheckNAddTwoStates(55, 56);
 								break;
 							
-							case 51: 
+							case 55: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(51, 52);
+									JjCheckNAddTwoStates(55, 56);
 								break;
 							
-							case 53: 
+							case 57: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(53, 54);
+									JjCheckNAddTwoStates(57, 58);
 								break;
 							
-							case 54: 
+							case 58: 
 								if (curChar == 95)
-									JjCheckNAdd(55);
+									JjCheckNAdd(59);
 								break;
 							
-							case 55: 
+							case 59: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(55, 56);
+									JjCheckNAddTwoStates(59, 60);
 								break;
 							
-							case 56: 
+							case 60: 
 								if (curChar == 95)
-									JjCheckNAddTwoStates(57, 58);
+									JjCheckNAddTwoStates(61, 62);
 								break;
 							
-							case 57: 
+							case 61: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(57, 58);
+									JjCheckNAddTwoStates(61, 62);
 								break;
 							
-							case 59: 
+							case 63: 
 								if ((0x7fffffe07fffffeL & l) == (ulong) 0L)
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAddTwoStates(54, 59);
-								break;
-							
-							case 60: 
-								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(60, 61);
+								JjCheckNAddTwoStates(58, 63);
 								break;
 							
-							case 62: 
+							case 64: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
 									JjCheckNAddStates(30, 35);
 								break;
 							
-							case 63: 
+							case 65: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(63, 64);
+									JjCheckNAddTwoStates(65, 66);
 								break;
 							
-							case 65: 
+							case 67: 
 								if ((0x7fffffe07fffffeL & l) == (ulong) 0L)
 									break;
 								if (kind > 2)
 									kind = 2;
-								JjCheckNAddTwoStates(64, 65);
+								JjCheckNAddTwoStates(66, 67);
 								break;
 							
-							case 66: 
+							case 68: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(66, 67);
+									JjCheckNAddTwoStates(68, 69);
 								break;
 							
-							case 68: 
+							case 70: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
 									JjAddStates(44, 45);
 								break;
 							
-							case 70: 
+							case 72: 
 								if ((0x7fffffe07fffffeL & l) != (ulong) 0L)
-									JjCheckNAddTwoStates(70, 71);
+									JjCheckNAddTwoStates(72, 73);
 								break;
 							
-							case 71: 
+							case 73: 
 								if (curChar == 64)
-									JjCheckNAdd(72);
+									JjCheckNAdd(74);
 								break;
 							
-							case 72: 
+							case 74: 
 								if ((0x7fffffe07fffffeL & l) == (ulong) 0L)
 									break;
 								if (kind > 4)
 									kind = 4;
-								JjCheckNAdd(72);
+								JjCheckNAdd(74);
 								break;
 							
 							default:  break;
 							
 						}
 					}
-					while (ii != startsAt);
+					while (i != startsAt);
 				}
 				else
 				{
@@ -797,339 +819,357 @@
 					ulong l1 = ((ulong) 1L) << (hiByte & 63);
 					int i2 = (curChar & 0xff) >> 6;
 					ulong l2 = ((ulong) 1L) << (curChar & 63);
+MatchLoop1: 
 					do 
 					{
-						switch (jjstateSet[--ii])
+						switch (jjstateSet[--i])
 						{
 							
 							case 0: 
-								if (jjCanMove_0(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+								if (JjCanMove_0(hiByte, i1, i2, l1, l2))
 								{
 									if (kind > 12)
 										kind = 12;
 								}
-								if (jjCanMove_1(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+								if (JjCanMove_1(hiByte, i1, i2, l1, l2))
+								{
+									if (kind > 13)
+										kind = 13;
+								}
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
 									JjCheckNAddStates(18, 23);
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+								if (JjCanMove_3(hiByte, i1, i2, l1, l2))
+									JjCheckNAddStates(12, 17);
+								if (JjCanMove_4(hiByte, i1, i2, l1, l2))
 								{
 									if (kind > 1)
 										kind = 1;
-									JjCheckNAddStates(0, 17);
+									JjCheckNAddStates(0, 11);
 								}
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
 									JjCheckNAddStates(30, 35);
 								break;
 							
 							case 1: 
-								if (jjCanMove_1(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddStates(18, 23);
+								if (JjCanMove_1(hiByte, i1, i2, l1, l2) && kind > 13)
+									kind = 13;
 								break;
 							
 							case 2: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(2, 3);
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjCheckNAddStates(18, 23);
+								break;
+							
+							case 3: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(3, 4);
 								break;
 							
 							case 4: 
-								if (!jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									break;
-								if (kind > 7)
-									kind = 7;
-								jjstateSet[jjnewStateCnt++] = 4;
+								if (JjCanMove_3(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(5, 6);
 								break;
 							
 							case 5: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
 									JjCheckNAddTwoStates(5, 6);
 								break;
 							
 							case 7: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjAddStates(46, 47);
+								if (!JjCanMove_4(hiByte, i1, i2, l1, l2))
+									break;
+								if (kind > 7)
+									kind = 7;
+								jjstateSet[jjnewStateCnt++] = 7;
+								break;
+							
+							case 8: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(8, 9);
 								break;
 							
 							case 9: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjAddStates(48, 49);
+								if (JjCanMove_3(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(10, 11);
 								break;
 							
 							case 10: 
-								if (!jjCanMove_1(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(10, 11);
+								break;
+							
+							case 12: 
+								if (JjCanMove_4(hiByte, i1, i2, l1, l2))
+									JjAddStates(46, 47);
+								break;
+							
+							case 14: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjAddStates(48, 49);
+								break;
+							
+							case 15: 
+								if (!JjCanMove_3(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAddTwoStates(6, 11);
+								JjCheckNAddTwoStates(11, 16);
 								break;
 							
-							case 11: 
-								if (!jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 16: 
+								if (!JjCanMove_2(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAddTwoStates(6, 11);
+								JjCheckNAddTwoStates(11, 16);
 								break;
 							
-							case 12: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(12, 13);
+							case 17: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(17, 18);
 								break;
 							
-							case 14: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(14, 15);
+							case 18: 
+								if (JjCanMove_3(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(19, 20);
 								break;
 							
-							case 16: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 19: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(19, 20);
+								break;
+							
+							case 21: 
+								if (JjCanMove_4(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(21, 22);
+								break;
+							
+							case 23: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
 									JjAddStates(50, 51);
 								break;
 							
-							case 17: 
-								if (jjCanMove_1(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(18, 19);
+							case 24: 
+								if (JjCanMove_3(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(25, 26);
 								break;
 							
-							case 18: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(18, 19);
+							case 25: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(25, 26);
 								break;
 							
-							case 20: 
-								if (!jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 27: 
+								if (!JjCanMove_4(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAddTwoStates(15, 20);
+								JjCheckNAddTwoStates(22, 27);
 								break;
 							
-							case 21: 
-								if (!jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 28: 
+								if (JjCanMove_3(hiByte, i1, i2, l1, l2))
+									JjCheckNAddStates(12, 17);
+								break;
+							
+							case 29: 
+								if (!JjCanMove_4(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 1)
 									kind = 1;
-								JjCheckNAddStates(0, 17);
+								JjCheckNAddStates(0, 11);
 								break;
 							
-							case 22: 
-								if (!jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 30: 
+								if (!JjCanMove_4(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 1)
 									kind = 1;
-								JjCheckNAdd(22);
+								JjCheckNAdd(30);
 								break;
 							
-							case 23: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 31: 
+								if (JjCanMove_4(hiByte, i1, i2, l1, l2))
 									JjCheckNAddStates(24, 26);
 								break;
 							
-							case 25: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 33: 
+								if (JjCanMove_4(hiByte, i1, i2, l1, l2))
 									JjCheckNAddStates(27, 29);
 								break;
 							
-							case 27: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(27, 28);
+							case 35: 
+								if (JjCanMove_4(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(35, 36);
 								break;
 							
-							case 29: 
-								if (!jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 37: 
+								if (!JjCanMove_4(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 5)
 									kind = 5;
-								JjCheckNAddTwoStates(28, 29);
+								JjCheckNAddTwoStates(36, 37);
 								break;
 							
-							case 30: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(30, 31);
+							case 38: 
+								if (JjCanMove_4(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(38, 39);
 								break;
 							
-							case 32: 
-								if (!jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 40: 
+								if (!JjCanMove_4(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 6)
 									kind = 6;
-								JjCheckNAddTwoStates(31, 32);
+								JjCheckNAddTwoStates(39, 40);
 								break;
 							
-							case 33: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(33, 34);
+							case 41: 
+								if (JjCanMove_4(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(41, 42);
 								break;
 							
-							case 35: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 43: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
 									JjAddStates(52, 53);
 								break;
 							
-							case 36: 
-								if (!jjCanMove_1(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 44: 
+								if (!JjCanMove_3(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAdd(37);
+								JjCheckNAdd(45);
 								break;
 							
-							case 37: 
-								if (!jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 45: 
+								if (!JjCanMove_2(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAdd(37);
-								break;
-							
-							case 38: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(38, 39);
-								break;
-							
-							case 39: 
-								if (jjCanMove_1(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(2, 3);
+								JjCheckNAdd(45);
 								break;
 							
-							case 40: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(40, 41);
+							case 46: 
+								if (JjCanMove_4(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(46, 47);
 								break;
 							
-							case 42: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 48: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
 									JjAddStates(54, 55);
 								break;
 							
-							case 43: 
-								if (jjCanMove_1(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(44, 45);
+							case 49: 
+								if (JjCanMove_3(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(50, 51);
 								break;
 							
-							case 44: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(44, 45);
+							case 50: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(50, 51);
 								break;
 							
-							case 46: 
-								if (!jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 52: 
+								if (!JjCanMove_4(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAddTwoStates(41, 46);
-								break;
-							
-							case 47: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(47, 48);
-								break;
-							
-							case 48: 
-								if (jjCanMove_1(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(5, 6);
+								JjCheckNAddTwoStates(47, 52);
 								break;
 							
-							case 49: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(49, 50);
+							case 53: 
+								if (JjCanMove_4(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(53, 54);
 								break;
 							
-							case 51: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 55: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
 									JjAddStates(56, 57);
 								break;
 							
-							case 52: 
-								if (jjCanMove_1(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(53, 54);
+							case 56: 
+								if (JjCanMove_3(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(57, 58);
 								break;
 							
-							case 53: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(53, 54);
+							case 57: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(57, 58);
 								break;
 							
-							case 55: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 59: 
+								if (JjCanMove_4(hiByte, i1, i2, l1, l2))
 									JjAddStates(58, 59);
 								break;
 							
-							case 57: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 61: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
 									JjAddStates(60, 61);
 								break;
 							
-							case 58: 
-								if (!jjCanMove_1(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 62: 
+								if (!JjCanMove_3(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAddTwoStates(54, 59);
+								JjCheckNAddTwoStates(58, 63);
 								break;
 							
-							case 59: 
-								if (!jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 63: 
+								if (!JjCanMove_2(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 7)
 									kind = 7;
-								JjCheckNAddTwoStates(54, 59);
-								break;
-							
-							case 60: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(60, 61);
-								break;
-							
-							case 61: 
-								if (jjCanMove_1(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(12, 13);
+								JjCheckNAddTwoStates(58, 63);
 								break;
 							
-							case 62: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 64: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
 									JjCheckNAddStates(30, 35);
 								break;
 							
-							case 63: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(63, 64);
+							case 65: 
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(65, 66);
 								break;
 							
-							case 65: 
-								if (!jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+							case 67: 
+								if (!JjCanMove_2(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 2)
 									kind = 2;
-								JjCheckNAddTwoStates(64, 65);
-								break;
-							
-							case 66: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(66, 67);
+								JjCheckNAddTwoStates(66, 67);
 								break;
 							
 							case 68: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjAddStates(44, 45);
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(68, 69);
 								break;
 							
 							case 70: 
-								if (jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
-									JjCheckNAddTwoStates(70, 71);
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjAddStates(44, 45);
 								break;
 							
 							case 72: 
-								if (!jjCanMove_2(hiByte, i1, i2, (ulong) l1, (ulong) l2))
+								if (JjCanMove_2(hiByte, i1, i2, l1, l2))
+									JjCheckNAddTwoStates(72, 73);
+								break;
+							
+							case 74: 
+								if (!JjCanMove_2(hiByte, i1, i2, l1, l2))
 									break;
 								if (kind > 4)
 									kind = 4;
-								jjstateSet[jjnewStateCnt++] = 72;
+								jjstateSet[jjnewStateCnt++] = 74;
 								break;
 							
 							default:  break;
 							
 						}
 					}
-					while (ii != startsAt);
+					while (i != startsAt);
 				}
 				if (kind != 0x7fffffff)
 				{
@@ -1138,7 +1178,7 @@
 					kind = 0x7fffffff;
 				}
 				++curPos;
-				if ((ii = jjnewStateCnt) == (startsAt = 73 - (jjnewStateCnt = startsAt)))
+				if ((i = jjnewStateCnt) == (startsAt = 75 - (jjnewStateCnt = startsAt)))
 					return curPos;
 				try
 				{
@@ -1150,8 +1190,8 @@
 				}
 			}
 		}
-		internal static readonly int[] jjnextStates = new int[]{22, 23, 24, 26, 30, 31, 33, 34, 38, 39, 40, 41, 47, 48, 49, 50, 60, 61, 2, 3, 5, 6, 12, 13, 23, 24, 26, 24, 25, 26, 63, 64, 66, 67, 70, 71, 2, 3, 12, 13, 18, 19, 44, 45, 68, 69, 7, 8, 9, 10, 16, 17, 35, 36, 42, 43, 51, 52, 55, 56, 57, 58};
-		private static bool jjCanMove_0(int hiByte, int i1, int i2, ulong l1, ulong l2)
+		internal static readonly int[] jjnextStates = new int[]{30, 31, 32, 34, 38, 39, 41, 42, 46, 47, 53, 54, 5, 6, 10, 11, 19, 20, 3, 4, 8, 9, 17, 18, 31, 32, 34, 32, 33, 34, 65, 66, 68, 69, 72, 73, 5, 6, 19, 20, 25, 26, 50, 51, 70, 71, 12, 13, 14, 15, 23, 24, 43, 44, 48, 49, 55, 56, 59, 60, 61, 62};
+		private static bool JjCanMove_0(int hiByte, int i1, int i2, ulong l1, ulong l2)
 		{
 			switch (hiByte)
 			{
@@ -1175,29 +1215,59 @@
 				
 			}
 		}
-		private static bool jjCanMove_1(int hiByte, int i1, int i2, ulong l1, ulong l2)
+		private static bool JjCanMove_1(int hiByte, int i1, int i2, ulong l1, ulong l2)
+		{
+			switch (hiByte)
+			{
+				
+				case 215: 
+					return ((jjbitVec7[i2] & l2) != (ulong) 0L);
+				
+				default: 
+					if ((jjbitVec6[i1] & l1) != (ulong) 0L)
+						return true;
+					return false;
+				
+			}
+		}
+		private static bool JjCanMove_2(int hiByte, int i1, int i2, ulong l1, ulong l2)
+		{
+			switch (hiByte)
+			{
+				
+				case 0: 
+					return ((jjbitVec9[i2] & l2) != (ulong) 0L);
+				
+				default: 
+					if ((jjbitVec8[i1] & l1) != (ulong) 0L)
+						return true;
+					return false;
+				
+			}
+		}
+		private static bool JjCanMove_3(int hiByte, int i1, int i2, ulong l1, ulong l2)
 		{
 			switch (hiByte)
 			{
 				
 				case 6: 
-					return ((jjbitVec8[i2] & l2) != (ulong) 0L);
+					return ((jjbitVec12[i2] & l2) != (ulong) 0L);
 				
 				case 11: 
-					return ((jjbitVec9[i2] & l2) != (ulong) 0L);
+					return ((jjbitVec13[i2] & l2) != (ulong) 0L);
 				
 				case 13: 
-					return ((jjbitVec10[i2] & l2) != (ulong) 0L);
+					return ((jjbitVec14[i2] & l2) != (ulong) 0L);
 				
 				case 14: 
-					return ((jjbitVec11[i2] & l2) != (ulong) 0L);
+					return ((jjbitVec15[i2] & l2) != (ulong) 0L);
 				
 				case 16: 
-					return ((jjbitVec12[i2] & l2) != (ulong) 0L);
+					return ((jjbitVec16[i2] & l2) != (ulong) 0L);
 				
 				default: 
-					if ((jjbitVec6[i1] & l1) != (ulong) 0L)
-						if ((jjbitVec7[i2] & l2) == (ulong) 0L)
+					if ((jjbitVec10[i1] & l1) != (ulong) 0L)
+						if ((jjbitVec11[i2] & l2) == (ulong) 0L)
 							return false;
 						else
 							return true;
@@ -1205,35 +1275,38 @@
 				
 			}
 		}
-		private static bool jjCanMove_2(int hiByte, int i1, int i2, ulong l1, ulong l2)
+		private static bool JjCanMove_4(int hiByte, int i1, int i2, ulong l1, ulong l2)
 		{
 			switch (hiByte)
 			{
 				
 				case 0: 
-					return ((jjbitVec14[i2] & l2) != (ulong) 0L);
+					return ((jjbitVec9[i2] & l2) != (ulong) 0L);
+				
+				case 215: 
+					return ((jjbitVec7[i2] & l2) != (ulong) 0L);
 				
 				default: 
-					if ((jjbitVec13[i1] & l1) != (ulong) 0L)
+					if ((jjbitVec17[i1] & l1) != (ulong) 0L)
 						return true;
 					return false;
 				
 			}
 		}
-		public static readonly System.String[] jjstrLiteralImages = new System.String[]{"", null, null, null, null, null, null, null, null, null, null, null, null, null, null};
+		public static readonly System.String[] jjstrLiteralImages = new System.String[]{"", null, null, null, null, null, null, null, null, null, null, null, null, null, null, null};
 		public static readonly System.String[] lexStateNames = new System.String[]{"DEFAULT"};
-		internal static readonly long[] jjtoToken = new long[]{0x10ffL};
-		internal static readonly long[] jjtoSkip = new long[]{0x4000L};
+		internal static readonly long[] jjtoToken = new long[]{0x30ffL};
+		internal static readonly long[] jjtoSkip = new long[]{0x8000L};
 		protected internal CharStream input_stream;
-		private uint[] jjrounds = new uint[73];
-		private int[] jjstateSet = new int[146];
+		private uint[] jjrounds = new uint[75];
+		private int[] jjstateSet = new int[150];
 		protected internal char curChar;
 		public StandardTokenizerTokenManager(CharStream stream)
 		{
 			InitBlock();
 			input_stream = stream;
 		}
-		public StandardTokenizerTokenManager(CharStream stream, int lexState):this(stream)
+		public StandardTokenizerTokenManager(CharStream stream, int lexState) : this(stream)
 		{
 			SwitchTo(lexState);
 		}
@@ -1248,7 +1321,7 @@
 		{
 			int i;
 			jjround = 0x80000001;
-			for (i = 73; i-- > 0; )
+			for (i = 75; i-- > 0; )
 				jjrounds[i] = 0x80000000;
 		}
 		public virtual void  ReInit(CharStream stream, int lexState)
@@ -1286,6 +1359,8 @@
 		
 		public virtual Token GetNextToken()
 		{
+			int kind;
+			Token specialToken = null;
 			Token matchedToken;
 			int curPos = 0;
 			
@@ -1305,9 +1380,9 @@
 				jjmatchedKind = 0x7fffffff;
 				jjmatchedPos = 0;
 				curPos = JjMoveStringLiteralDfa0_0();
-				if (jjmatchedPos == 0 && jjmatchedKind > 14)
+				if (jjmatchedPos == 0 && jjmatchedKind > 15)
 				{
-					jjmatchedKind = 14;
+					jjmatchedKind = 15;
 				}
 				if (jjmatchedKind != 0x7fffffff)
 				{

Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Standard/Token.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Analysis/Standard/Token.cs?rev=411501&r1=411500&r2=411501&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Standard/Token.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Standard/Token.cs Sat Jun  3 19:41:13 2006
@@ -13,8 +13,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 /* Generated By:JavaCC: Do not edit this line. Token.java Version 3.0 */
 using System;
+
 namespace Lucene.Net.Analysis.Standard
 {
 	
@@ -40,23 +42,23 @@
 		
 		/// <summary> A reference to the next regular (non-special) token from the input
 		/// stream.  If this is the last token from the input stream, or if the
-		/// token manager has not read tokens beyond this one, this Field is
+		/// token manager has not read tokens beyond this one, this field is
 		/// set to null.  This is true only if this token is also a regular
 		/// token.  Otherwise, see below for a description of the contents of
-		/// this Field.
+		/// this field.
 		/// </summary>
 		public Token next;
 		
-		/// <summary> This Field is used to access special tokens that occur prior to this
+		/// <summary> This field is used to access special tokens that occur prior to this
 		/// token, but after the immediately preceding regular (non-special) token.
-		/// If there are no such special tokens, this Field is set to null.
-		/// When there are more than one such special token, this Field refers
+		/// If there are no such special tokens, this field is set to null.
+		/// When there are more than one such special token, this field refers
 		/// to the last of these special tokens, which in turn refers to the next
-		/// previous special token through its specialToken Field, and so on
-		/// until the first special token (whose specialToken Field is null).
+		/// previous special token through its specialToken field, and so on
+		/// until the first special token (whose specialToken field is null).
 		/// The next fields of special tokens refer to other special tokens that
 		/// immediately follow it (without an intervening regular token).  If there
-		/// is no such token, this Field is null.
+		/// is no such token, this field is null.
 		/// </summary>
 		public Token specialToken;
 		

Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Standard/TokenMgrError.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Analysis/Standard/TokenMgrError.cs?rev=411501&r1=411500&r2=411501&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Standard/TokenMgrError.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Standard/TokenMgrError.cs Sat Jun  3 19:41:13 2006
@@ -13,8 +13,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 /* Generated By:JavaCC: Do not edit this line. TokenMgrError.java Version 3.0 */
 using System;
+
 namespace Lucene.Net.Analysis.Standard
 {
 	

Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/StopAnalyzer.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Analysis/StopAnalyzer.cs?rev=411501&r1=411500&r2=411501&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/StopAnalyzer.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/StopAnalyzer.cs Sat Jun  3 19:41:13 2006
@@ -13,13 +13,15 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 using System;
+
 namespace Lucene.Net.Analysis
 {
 	
 	/// <summary>Filters LetterTokenizer with LowerCaseFilter and StopFilter. </summary>
 	
-	public sealed class StopAnalyzer:Analyzer
+	public sealed class StopAnalyzer : Analyzer
 	{
 		private System.Collections.Hashtable stopWords;
 		
@@ -34,10 +36,32 @@
 			stopWords = StopFilter.MakeStopSet(ENGLISH_STOP_WORDS);
 		}
 		
+		/// <summary>Builds an analyzer with the stop words from the given set.</summary>
+		public StopAnalyzer(System.Collections.Hashtable stopWords)
+		{
+			this.stopWords = stopWords;
+		}
+		
 		/// <summary>Builds an analyzer which removes words in the provided array. </summary>
 		public StopAnalyzer(System.String[] stopWords)
 		{
 			this.stopWords = StopFilter.MakeStopSet(stopWords);
+		}
+		
+		/// <summary>Builds an analyzer with the stop words from the given file.</summary>
+		/// <seealso cref="WordlistLoader.GetWordSet(File)">
+		/// </seealso>
+		public StopAnalyzer(System.IO.FileInfo stopwordsFile)
+		{
+			stopWords = WordlistLoader.GetWordSet(stopwordsFile);
+		}
+		
+		/// <summary>Builds an analyzer with the stop words from the given reader.</summary>
+		/// <seealso cref="WordlistLoader.GetWordSet(Reader)">
+		/// </seealso>
+		public StopAnalyzer(System.IO.TextReader stopwords)
+		{
+			stopWords = WordlistLoader.GetWordSet(stopwords);
 		}
 		
 		/// <summary>Filters LowerCaseTokenizer with StopFilter. </summary>

Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/StopFilter.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Analysis/StopFilter.cs?rev=411501&r1=411500&r2=411501&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/StopFilter.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/StopFilter.cs Sat Jun  3 19:41:13 2006
@@ -13,7 +13,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 using System;
+
 namespace Lucene.Net.Analysis
 {
 	
@@ -23,13 +25,20 @@
 	{
 		
 		private System.Collections.Hashtable stopWords;
+		private bool ignoreCase;
+		
+		/// <summary> Construct a token stream filtering the given input.</summary>
+		public StopFilter(TokenStream input, System.String[] stopWords) : this(input, stopWords, false)
+		{
+		}
 		
 		/// <summary> Constructs a filter which removes words from the input
 		/// TokenStream that are named in the array of words.
 		/// </summary>
-		public StopFilter(TokenStream in_Renamed, System.String[] stopWords) : base(in_Renamed)
+		public StopFilter(TokenStream in_Renamed, System.String[] stopWords, bool ignoreCase) : base(in_Renamed)
 		{
-			this.stopWords = MakeStopSet(stopWords);
+			this.ignoreCase = ignoreCase;
+			this.stopWords = MakeStopSet(stopWords, ignoreCase);
 		}
 		
 		/// <summary> Constructs a filter which removes words from the input
@@ -38,11 +47,45 @@
 		/// </summary>
 		/// <deprecated> Use {@link #StopFilter(TokenStream, Set)} instead
 		/// </deprecated>
-		public StopFilter(TokenStream in_Renamed, System.Collections.Hashtable stopTable) : base(in_Renamed)
+		public StopFilter(TokenStream in_Renamed, System.Collections.Hashtable stopTable) : this(in_Renamed, stopTable, false)
+		{
+		}
+		/// <summary> Constructs a filter which removes words from the input
+		/// TokenStream that are named in the Hashtable.
+		/// If ignoreCase is true, all keys in the stopTable should already
+		/// be lowercased.
+		/// </summary>
+		/// <deprecated> Use {@link #StopFilter(TokenStream, Set)} instead
+		/// </deprecated>
+		public StopFilter(TokenStream in_Renamed, System.Collections.Hashtable stopTable, bool ignoreCase) 
+            : this(in_Renamed, new System.Collections.Hashtable(stopTable), ignoreCase, 0)
+		{
+		}
+		
+		/// <summary> Construct a token stream filtering the given input.</summary>
+		/// <param name="input">
+		/// </param>
+		/// <param name="stopWords">The set of Stop Words, as Strings.  If ignoreCase is true, all strings should be lower cased
+		/// </param>
+		/// <param name="ignoreCase">-Ignore case when stopping.  The stopWords set must be setup to contain only lower case words 
+		/// </param>
+		public StopFilter(TokenStream input, System.Collections.Hashtable stopWords, bool ignoreCase, int as_set_in_java) : base(input)
 		{
-			stopWords = new System.Collections.Hashtable(new System.Collections.Hashtable(stopTable));
+			this.ignoreCase = ignoreCase;
+			this.stopWords = stopWords;
 		}
 		
+		/// <summary> Constructs a filter which removes words from the input
+		/// TokenStream that are named in the Set.
+		/// It is crucial that an efficient Set implementation is used
+		/// for maximum performance.
+		/// 
+		/// </summary>
+		/// <seealso cref="MakeStopSet(java.lang.String[])">
+		/// </seealso>
+		public StopFilter(TokenStream in_Renamed, System.Collections.Hashtable stopWords, int as_set_in_java) : this(in_Renamed, stopWords, false)
+		{
+		}
 		/// <summary> Builds a Hashtable from an array of stop words,
 		/// appropriate for passing into the StopFilter constructor.
 		/// This permits this table construction to be cached once when
@@ -53,9 +96,24 @@
 		/// </deprecated>
 		public static System.Collections.Hashtable MakeStopTable(System.String[] stopWords)
 		{
+			return makeStopTable(stopWords, false);
+		}
+		
+		/// <summary> Builds a Hashtable from an array of stop words,
+		/// appropriate for passing into the StopFilter constructor.
+		/// This permits this table construction to be cached once when
+		/// an Analyzer is constructed.
+		/// </summary>
+		/// <deprecated> Use {@link #MakeStopSet(java.lang.String[], boolean)}  instead.
+		/// </deprecated>
+		public static System.Collections.Hashtable makeStopTable(System.String[] stopWords, bool ignoreCase)
+		{
 			System.Collections.Hashtable stopTable = System.Collections.Hashtable.Synchronized(new System.Collections.Hashtable(stopWords.Length));
 			for (int i = 0; i < stopWords.Length; i++)
-				stopTable[stopWords[i]] = stopWords[i];
+			{
+				System.String stopWord = ignoreCase ? stopWords[i].ToLower() : stopWords[i];
+				stopTable[stopWord] = stopWord;
+			}
 			return stopTable;
 		}
 		
@@ -63,12 +121,30 @@
 		/// appropriate for passing into the StopFilter constructor.
 		/// This permits this stopWords construction to be cached once when
 		/// an Analyzer is constructed.
+		/// 
 		/// </summary>
+		/// <seealso cref="MakeStopSet(java.lang.String[], boolean) passing false to ignoreCase">
+		/// </seealso>
 		public static System.Collections.Hashtable MakeStopSet(System.String[] stopWords)
 		{
+			return MakeStopSet(stopWords, false);
+		}
+		
+		/// <summary> </summary>
+		/// <param name="stopWords">
+		/// </param>
+		/// <param name="ignoreCase">If true, all words are lower cased first.  
+		/// </param>
+		/// <returns> a Set containing the words
+		/// </returns>
+		public static System.Collections.Hashtable MakeStopSet(System.String[] stopWords, bool ignoreCase)
+		{
 			System.Collections.Hashtable stopTable = new System.Collections.Hashtable(stopWords.Length);
-			for (int i = 0; i < stopWords.Length; i++)
-				stopTable.Add(stopWords[i], stopWords[i]);
+            for (int i = 0; i < stopWords.Length; i++)
+            {
+                System.String tmp = ignoreCase ? stopWords[i].ToLower() : stopWords[i];
+                stopTable.Add(tmp, tmp);
+            }
 			return stopTable;
 		}
 		
@@ -77,8 +153,11 @@
 		{
 			// return the first non-stop word found
 			for (Token token = input.Next(); token != null; token = input.Next())
-				if (!stopWords.Contains(token.termText))
+			{
+				System.String termText = ignoreCase ? token.termText.ToLower() : token.termText;
+				if (!stopWords.Contains(termText))
 					return token;
+			}
 			// reached EOS -- return null
 			return null;
 		}

Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Token.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Analysis/Token.cs?rev=411501&r1=411500&r2=411501&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Token.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Token.cs Sat Jun  3 19:41:13 2006
@@ -13,11 +13,14 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 using System;
+
 namespace Lucene.Net.Analysis
 {
-	/// <summary>A Token is an occurence of a term from the text of a Field.  It consists of
-	/// a term's text, the start and end offset of the term in the text of the Field,
+	
+	/// <summary>A Token is an occurence of a term from the text of a field.  It consists of
+	/// a term's text, the start and end offset of the term in the text of the field,
 	/// and a type string.
 	/// The start and end offsets permit applications to re-associate a token with
 	/// its source text, e.g., to display highlighted query terms in a document
@@ -34,7 +37,7 @@
 		internal System.String termText; // the text of the term
 		internal int startOffset; // start in source text
 		internal int endOffset; // end in source text
-		internal System.String type_Renamed_Field = "word"; // lexical type
+		internal System.String type = "word"; // lexical type
 		
 		private int positionIncrement = 1;
 		
@@ -54,7 +57,7 @@
 			termText = text;
 			startOffset = start;
 			endOffset = end;
-			type_Renamed_Field = typ;
+			type = typ;
 		}
 		
 		/// <summary>Set the position increment.  This determines the position of this token
@@ -81,7 +84,7 @@
 		/// 
 		/// </ul>
 		/// </summary>
-		/// <seealso cref="Lucene.Net.Index.TermPositions">
+		/// <seealso cref="Lucene.Net.index.TermPositions">
 		/// </seealso>
 		public void  SetPositionIncrement(int positionIncrement)
 		{
@@ -91,7 +94,7 @@
 		}
 		
 		/// <summary>Returns the position increment of this Token.</summary>
-		/// <seealso cref="#setPositionIncrement">
+		/// <seealso cref="setPositionIncrement">
 		/// </seealso>
 		public int GetPositionIncrement()
 		{
@@ -126,7 +129,19 @@
 		/// <summary>Returns this Token's lexical type.  Defaults to "word". </summary>
 		public System.String Type()
 		{
-			return type_Renamed_Field;
+			return type;
+		}
+		
+		public override System.String ToString()
+		{
+			System.Text.StringBuilder sb = new System.Text.StringBuilder();
+			sb.Append("(" + termText + "," + startOffset + "," + endOffset);
+			if (!type.Equals("word"))
+				sb.Append(",type=" + type);
+			if (positionIncrement != 1)
+				sb.Append(",posIncr=" + positionIncrement);
+			sb.Append(")");
+			return sb.ToString();
 		}
 	}
 }

Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/TokenFilter.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Analysis/TokenFilter.cs?rev=411501&r1=411500&r2=411501&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/TokenFilter.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/TokenFilter.cs Sat Jun  3 19:41:13 2006
@@ -13,7 +13,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 using System;
+
 namespace Lucene.Net.Analysis
 {
 	

Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/TokenStream.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Analysis/TokenStream.cs?rev=411501&r1=411500&r2=411501&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/TokenStream.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/TokenStream.cs Sat Jun  3 19:41:13 2006
@@ -13,7 +13,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 using System;
+
 namespace Lucene.Net.Analysis
 {
 	

Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Tokenizer.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Analysis/Tokenizer.cs?rev=411501&r1=411500&r2=411501&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Tokenizer.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/Tokenizer.cs Sat Jun  3 19:41:13 2006
@@ -13,7 +13,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 using System;
+
 namespace Lucene.Net.Analysis
 {
 	

Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/WhitespaceAnalyzer.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Analysis/WhitespaceAnalyzer.cs?rev=411501&r1=411500&r2=411501&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/WhitespaceAnalyzer.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/WhitespaceAnalyzer.cs Sat Jun  3 19:41:13 2006
@@ -13,7 +13,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 using System;
+
 namespace Lucene.Net.Analysis
 {
 	

Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/WhitespaceTokenizer.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Analysis/WhitespaceTokenizer.cs?rev=411501&r1=411500&r2=411501&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/WhitespaceTokenizer.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/WhitespaceTokenizer.cs Sat Jun  3 19:41:13 2006
@@ -13,7 +13,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 using System;
+
 namespace Lucene.Net.Analysis
 {
 	
@@ -21,10 +23,10 @@
 	/// Adjacent sequences of non-Whitespace characters form tokens. 
 	/// </summary>
 	
-	public class WhitespaceTokenizer:CharTokenizer
+	public class WhitespaceTokenizer : CharTokenizer
 	{
 		/// <summary>Construct a new WhitespaceTokenizer. </summary>
-		public WhitespaceTokenizer(System.IO.TextReader in_Renamed):base(in_Renamed)
+		public WhitespaceTokenizer(System.IO.TextReader in_Renamed) : base(in_Renamed)
 		{
 		}
 		

Added: incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/WordlistLoader.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Analysis/WordlistLoader.cs?rev=411501&view=auto
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/WordlistLoader.cs (added)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Analysis/WordlistLoader.cs Sat Jun  3 19:41:13 2006
@@ -0,0 +1,142 @@
+/*
+ * Copyright 2004 The Apache Software Foundation
+ * 
+ * Licensed 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.
+ */
+
+using System;
+
+namespace Lucene.Net.Analysis
+{
+	
+	/// <summary> Loader for text files that represent a list of stopwords.
+	/// 
+	/// </summary>
+	/// <author>  Gerhard Schwarz
+	/// </author>
+	/// <version>  $Id: WordlistLoader.java 192989 2005-06-22 19:59:03Z dnaber $
+	/// </version>
+	public class WordlistLoader
+	{
+		
+		/// <summary> Loads a text file and adds every line as an entry to a HashSet (omitting
+		/// leading and trailing whitespace). Every line of the file should contain only
+		/// one word. The words need to be in lowercase if you make use of an
+		/// Analyzer which uses LowerCaseFilter (like StandardAnalyzer).
+		/// 
+		/// </summary>
+		/// <param name="wordfile">File containing the wordlist
+		/// </param>
+		/// <returns> A HashSet with the file's words
+		/// </returns>
+		public static System.Collections.Hashtable GetWordSet(System.IO.FileInfo wordfile)
+		{
+			System.Collections.Hashtable result = new System.Collections.Hashtable();
+			System.IO.TextReader reader = null;
+			try
+			{
+				reader = new System.IO.StreamReader(wordfile.FullName, System.Text.Encoding.Default);
+				result = GetWordSet(reader);
+			}
+			finally
+			{
+				if (reader != null)
+					reader.Close();
+			}
+			return result;
+		}
+		
+		/// <summary> Reads lines from a Reader and adds every line as an entry to a HashSet (omitting
+		/// leading and trailing whitespace). Every line of the Reader should contain only
+		/// one word. The words need to be in lowercase if you make use of an
+		/// Analyzer which uses LowerCaseFilter (like StandardAnalyzer).
+		/// 
+		/// </summary>
+		/// <param name="reader">Reader containing the wordlist
+		/// </param>
+		/// <returns> A HashSet with the reader's words
+		/// </returns>
+		public static System.Collections.Hashtable GetWordSet(System.IO.TextReader reader)
+		{
+			System.Collections.Hashtable result = new System.Collections.Hashtable();
+			System.IO.TextReader br = null;
+			try
+			{
+				br = (System.IO.TextReader) reader;
+				System.String word = null;
+				while ((word = br.ReadLine()) != null)
+				{
+                    System.String tmp = word.Trim();
+					result.Add(tmp, tmp);
+				}
+			}
+			finally
+			{
+				if (br != null)
+					br.Close();
+			}
+			return result;
+		}
+		
+		/// <param name="path">     Path to the wordlist
+		/// </param>
+		/// <param name="wordfile"> Name of the wordlist
+		/// 
+		/// </param>
+		/// <deprecated> Use {@link #GetWordSet(File)} instead
+		/// </deprecated>
+		public static System.Collections.Hashtable GetWordtable(System.String path, System.String wordfile)
+		{
+			return GetWordtable(new System.IO.FileInfo(System.IO.Path.Combine(path, wordfile)));
+		}
+		
+		/// <param name="wordfile"> Complete path to the wordlist
+		/// 
+		/// </param>
+		/// <deprecated> Use {@link #GetWordSet(File)} instead
+		/// </deprecated>
+		public static System.Collections.Hashtable GetWordtable(System.String wordfile)
+		{
+			return GetWordtable(new System.IO.FileInfo(wordfile));
+		}
+		
+		/// <param name="wordfile"> File object that points to the wordlist
+		/// 
+		/// </param>
+		/// <deprecated> Use {@link #GetWordSet(File)} instead
+		/// </deprecated>
+		public static System.Collections.Hashtable GetWordtable(System.IO.FileInfo wordfile)
+		{
+			System.Collections.Hashtable wordSet = (System.Collections.Hashtable) GetWordSet(wordfile);
+			System.Collections.Hashtable result = MakeWordTable(wordSet);
+			return result;
+		}
+		
+		/// <summary> Builds a wordlist table, using words as both keys and values
+		/// for backward compatibility.
+		/// 
+		/// </summary>
+		/// <param name="wordSet">  stopword set
+		/// </param>
+		private static System.Collections.Hashtable MakeWordTable(System.Collections.Hashtable wordSet)
+		{
+			System.Collections.Hashtable table = System.Collections.Hashtable.Synchronized(new System.Collections.Hashtable());
+			for (System.Collections.IEnumerator iter = wordSet.GetEnumerator(); iter.MoveNext(); )
+			{
+				System.String word = (System.String) iter.Current;
+				table[word] = word;
+			}
+			return table;
+		}
+	}
+}
\ No newline at end of file

Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/AssemblyInfo.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/AssemblyInfo.cs?rev=411501&r1=411500&r2=411501&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/AssemblyInfo.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/AssemblyInfo.cs Sat Jun  3 19:41:13 2006
@@ -26,7 +26,7 @@
 // You can specify all the values or you can default the Revision and Build Numbers 
 // by using the '*' as shown below:
 
-[assembly: AssemblyVersion("1.4.3.004")]
+[assembly: AssemblyVersion("1.9.0.003")]
 
 //
 // In order to sign your assembly you must specify a key to use. Refer to the 

Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Document/DateField.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Document/DateField.cs?rev=411501&r1=411500&r2=411501&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Document/DateField.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Document/DateField.cs Sat Jun  3 19:41:13 2006
@@ -13,37 +13,44 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 using System;
+using PrefixQuery = Lucene.Net.Search.PrefixQuery;
+using RangeQuery = Lucene.Net.Search.RangeQuery;
+
 namespace Lucene.Net.Documents
 {
 	
 	/// <summary> Provides support for converting dates to strings and vice-versa.
 	/// The strings are structured so that lexicographic sorting orders by date,
-	/// which makes them suitable for use as Field values and search terms.
+	/// which makes them suitable for use as field values and search terms.
 	/// 
-	/// <P>
-	/// Note that you do not have to use this class, you can just save your
-	/// dates as strings if lexicographic sorting orders them by date. This is
-	/// the case for example for dates like <code>yyyy-mm-dd hh:mm:ss</code>
-	/// (of course you can leave out the delimiter characters to save some space).
-	/// The advantage with using such a format is that you can easily save dates
-	/// with the required granularity, e.g. leaving out seconds. This saves memory
-	/// when searching with a RangeQuery or PrefixQuery, as Lucene
-	/// expands these queries to a BooleanQuery with potentially very many terms. 
+	/// <P>Note that this class saves dates with millisecond granularity,
+	/// which is bad for {@link RangeQuery} and {@link PrefixQuery}, as those
+	/// queries are expanded to a BooleanQuery with a potentially large number 
+	/// of terms when searching. Thus you might want to use
+	/// {@link DateTools} instead.
 	/// 
 	/// <P>
 	/// Note: dates before 1970 cannot be used, and therefore cannot be
-	/// indexed when using this class.
+	/// indexed when using this class. See {@link DateTools} for an
+	/// alternative without such a limitation.
+	/// 
 	/// </summary>
+	/// <deprecated> If you build a new index, use {@link DateTools} instead. For 
+	/// existing indices you can continue using this class, as it will not be 
+	/// removed in the near future despite being deprecated.
+	/// </deprecated>
 	public class DateField
 	{
+		
 		private DateField()
 		{
 		}
 		
 		// make date strings long enough to last a millenium
-        private static int DATE_LEN = SupportClass.Number.ToString(
-            1000L * 365 * 24 * 60 * 60 * 1000, SupportClass.Number.MAX_RADIX).Length;
+		private static int DATE_LEN = System.Convert.ToString(
+            1000L * 365 * 24 * 60 * 60 * 1000, 16).Length;
 		
 		public static System.String MIN_DATE_STRING()
 		{
@@ -68,7 +75,7 @@
             TimeSpan ts = date.Subtract(new DateTime(1970, 1, 1));
             ts = ts.Subtract(TimeZone.CurrentTimeZone.GetUtcOffset(date));
             return TimeToString(ts.Ticks / TimeSpan.TicksPerMillisecond);
-		}
+        }
 
 		/// <summary> Converts a millisecond time to a string suitable for indexing.</summary>
 		/// <throws>  RuntimeException if the time specified in the </throws>
@@ -79,7 +86,7 @@
 			if (time < 0)
 				throw new System.SystemException("time too early");
 			
-            System.String s = SupportClass.Number.ToString(time, SupportClass.Number.MAX_RADIX);
+			System.String s = SupportClass.Number.ToString(time, SupportClass.Number.MAX_RADIX);
 			
 			if (s.Length > DATE_LEN)
 				throw new System.SystemException("time too late");
@@ -95,26 +102,26 @@
 			
 			return s;
 		}
-
+		
 		/// <summary>Converts a string-encoded date into a millisecond time. </summary>
 		public static long StringToTime(System.String s)
 		{
-            return SupportClass.Number.Parse(s, SupportClass.Number.MAX_RADIX);
+			return SupportClass.Number.Parse(s, SupportClass.Number.MAX_RADIX);
 		}
-
 		/// <summary>Converts a string-encoded date into a Date object. </summary>
 		public static System.DateTime StringToDate(System.String s)
 		{
+            return new System.DateTime(StringToTime(s));
+
+            // {{Aroush-1.9}} Will the line above do it or do we need the lines below?!
+
+            /*
             long ticks = StringToTime(s) * TimeSpan.TicksPerMillisecond;
             System.DateTime date = new System.DateTime(1970, 1, 1);
             date = date.AddTicks(ticks);
             date = date.Add(TimeZone.CurrentTimeZone.GetUtcOffset(date));
             return date;
-
-            /*
-            System.TimeSpan ts = System.TimeSpan.FromMilliseconds(System.DateField.StringToTime(s));
-            return new System.DateTime(1970,1,1).Add(ts).ToLocalTime();
-            */
+            */
 		}
 	}
 }



Mime
View raw message