You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stanbol.apache.org by an...@apache.org on 2012/03/28 17:00:10 UTC
svn commit: r1306390 [9/10] - in /incubator/stanbol/trunk/rules/manager: ./
RuleConf/ demo/ src/main/java/org/apache/stanbol/rules/manager/
src/main/java/org/apache/stanbol/rules/manager/arqextention/
src/main/java/org/apache/stanbol/rules/manager/atom...
Added: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImplConstants.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImplConstants.java?rev=1306390&view=auto
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImplConstants.java (added)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImplConstants.java Wed Mar 28 15:00:06 2012
@@ -0,0 +1,142 @@
+/*
+ * 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. RuleParserImplConstants.java */
+package org.apache.stanbol.rules.manager.parse;
+
+/**
+ * Token literal values and constants. Generated by org.javacc.parser.OtherFilesGen#start()
+ */
+public interface RuleParserImplConstants {
+
+ /** End of File. */
+ int EOF = 0;
+ /** RegularExpression Id. */
+ int LARROW = 8;
+ /** RegularExpression Id. */
+ int COLON = 9;
+ /** RegularExpression Id. */
+ int EQUAL = 10;
+ /** RegularExpression Id. */
+ int AND = 11;
+ /** RegularExpression Id. */
+ int COMMA = 12;
+ /** RegularExpression Id. */
+ int SAME = 13;
+ /** RegularExpression Id. */
+ int DIFFERENT = 14;
+ /** RegularExpression Id. */
+ int LESSTHAN = 15;
+ /** RegularExpression Id. */
+ int GREATERTHAN = 16;
+ /** RegularExpression Id. */
+ int LESSEQUALTHAN = 17;
+ /** RegularExpression Id. */
+ int GREATEREQUALTHAN = 18;
+ /** RegularExpression Id. */
+ int IS = 19;
+ /** RegularExpression Id. */
+ int NEW_IRI = 20;
+ /** RegularExpression Id. */
+ int NEW_LITERAL = 21;
+ /** RegularExpression Id. */
+ int LENGTH = 22;
+ /** RegularExpression Id. */
+ int SUBSTRING = 23;
+ /** RegularExpression Id. */
+ int UPPERCASE = 24;
+ /** RegularExpression Id. */
+ int LOWERCASE = 25;
+ /** RegularExpression Id. */
+ int STARTS_WITH = 26;
+ /** RegularExpression Id. */
+ int ENDS_WITH = 27;
+ /** RegularExpression Id. */
+ int LET = 28;
+ /** RegularExpression Id. */
+ int CONCAT = 29;
+ /** RegularExpression Id. */
+ int HAS = 30;
+ /** RegularExpression Id. */
+ int VALUES = 31;
+ /** RegularExpression Id. */
+ int NOTEX = 32;
+ /** RegularExpression Id. */
+ int PLUS = 33;
+ /** RegularExpression Id. */
+ int MINUS = 34;
+ /** RegularExpression Id. */
+ int MULTIPLIED = 35;
+ /** RegularExpression Id. */
+ int DIVIDED = 36;
+ /** RegularExpression Id. */
+ int NOT = 37;
+ /** RegularExpression Id. */
+ int NAMESPACE = 38;
+ /** RegularExpression Id. */
+ int LOCALNAME = 39;
+ /** RegularExpression Id. */
+ int STR = 40;
+ /** RegularExpression Id. */
+ int APOX = 41;
+ /** RegularExpression Id. */
+ int UNION = 42;
+ /** RegularExpression Id. */
+ int CREATE_LABEL = 43;
+ /** RegularExpression Id. */
+ int PROP = 44;
+ /** RegularExpression Id. */
+ int IS_BLANK = 45;
+ /** RegularExpression Id. */
+ int LPAR = 46;
+ /** RegularExpression Id. */
+ int RPAR = 47;
+ /** RegularExpression Id. */
+ int DQUOT = 48;
+ /** RegularExpression Id. */
+ int LQUAD = 49;
+ /** RegularExpression Id. */
+ int RQUAD = 50;
+ /** RegularExpression Id. */
+ int NUM = 51;
+ /** RegularExpression Id. */
+ int VAR = 52;
+ /** RegularExpression Id. */
+ int VARIABLE = 53;
+ /** RegularExpression Id. */
+ int URI = 54;
+ /** RegularExpression Id. */
+ int STRING = 55;
+ /** RegularExpression Id. */
+ int BNODE = 56;
+
+ /** Lexical state. */
+ int DEFAULT = 0;
+ /** Lexical state. */
+ int WithinComment = 1;
+
+ /** Literal token values. */
+ String[] tokenImage = {"<EOF>", "\" \"", "\"\\r\"", "\"\\t\"", "\"\\n\"", "\"/*\"", "\"*/\"",
+ "<token of kind 7>", "\"->\"", "\":\"", "\"=\"", "\".\"", "\",\"", "\"same\"",
+ "\"different\"", "\"lt\"", "\"gt\"", "\"leq\"", "\"geq\"", "\"is\"", "\"newIRI\"",
+ "\"newLiteral\"", "\"length\"", "\"substring\"", "\"upperCase\"", "\"lowerCase\"",
+ "\"startsWith\"", "\"endsWith\"", "\"let\"", "\"concat\"", "\"has\"",
+ "\"values\"", "\"notex\"", "\"sum\"", "\"sub\"", "\"mult\"", "\"div\"", "\"not\"",
+ "\"namespace\"", "\"localname\"", "\"str\"", "\"^\"", "\"union\"",
+ "\"createLabel\"", "\"prop\"", "\"isBlank\"", "\"(\"", "\")\"", "\"\\\"\"",
+ "\"[\"", "\"]\"", "<NUM>", "<VAR>", "<VARIABLE>", "<URI>", "<STRING>", "<BNODE>",};
+
+}
Added: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImplTokenManager.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImplTokenManager.java?rev=1306390&view=auto
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImplTokenManager.java (added)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/RuleParserImplTokenManager.java Wed Mar 28 15:00:06 2012
@@ -0,0 +1,1003 @@
+/*
+ * 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. RuleParserImplTokenManager.java */
+package org.apache.stanbol.rules.manager.parse;
+
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.io.StringReader;
+import java.net.URI;
+import java.net.URISyntaxException;
+import org.apache.clerezza.rdf.core.UriRef;
+import org.apache.stanbol.rules.base.api.Rule;
+import org.apache.stanbol.rules.base.api.RuleAtom;
+import org.apache.stanbol.rules.base.api.util.AtomList;
+import org.apache.stanbol.rules.manager.KB;
+import org.apache.stanbol.rules.manager.RuleImpl;
+import org.apache.stanbol.rules.manager.atoms.ClassAtom;
+import org.apache.stanbol.rules.manager.atoms.ComparisonAtom;
+import org.apache.stanbol.rules.manager.atoms.ConcatAtom;
+import org.apache.stanbol.rules.manager.atoms.CreateLabelAtom;
+import org.apache.stanbol.rules.manager.atoms.DatavaluedPropertyAtom;
+import org.apache.stanbol.rules.manager.atoms.DifferentAtom;
+import org.apache.stanbol.rules.manager.atoms.DivisionAtom;
+import org.apache.stanbol.rules.manager.atoms.EndsWithAtom;
+import org.apache.stanbol.rules.manager.atoms.ExpressionAtom;
+import org.apache.stanbol.rules.manager.atoms.GreaterEqualThanAtom;
+import org.apache.stanbol.rules.manager.atoms.GreaterThanAtom;
+import org.apache.stanbol.rules.manager.atoms.IObjectAtom;
+import org.apache.stanbol.rules.manager.atoms.IndividualPropertyAtom;
+import org.apache.stanbol.rules.manager.atoms.IsBlankAtom;
+import org.apache.stanbol.rules.manager.atoms.LengthAtom;
+import org.apache.stanbol.rules.manager.atoms.LessEqualThanAtom;
+import org.apache.stanbol.rules.manager.atoms.LessThanAtom;
+import org.apache.stanbol.rules.manager.atoms.LetAtom;
+import org.apache.stanbol.rules.manager.atoms.LocalNameAtom;
+import org.apache.stanbol.rules.manager.atoms.LowerCaseAtom;
+import org.apache.stanbol.rules.manager.atoms.MultiplicationAtom;
+import org.apache.stanbol.rules.manager.atoms.NamespaceAtom;
+import org.apache.stanbol.rules.manager.atoms.NewIRIAtom;
+import org.apache.stanbol.rules.manager.atoms.NewLiteralAtom;
+import org.apache.stanbol.rules.manager.atoms.NotAtom;
+import org.apache.stanbol.rules.manager.atoms.NumberAtom;
+import org.apache.stanbol.rules.manager.atoms.NumericFunctionAtom;
+import org.apache.stanbol.rules.manager.atoms.NumericVariableAtom;
+import org.apache.stanbol.rules.manager.atoms.PropStringAtom;
+import org.apache.stanbol.rules.manager.atoms.ResourceAtom;
+import org.apache.stanbol.rules.manager.atoms.RuleBlankNode;
+import org.apache.stanbol.rules.manager.atoms.SameAtom;
+import org.apache.stanbol.rules.manager.atoms.StartsWithAtom;
+import org.apache.stanbol.rules.manager.atoms.StrAtom;
+import org.apache.stanbol.rules.manager.atoms.StringAtom;
+import org.apache.stanbol.rules.manager.atoms.StringFunctionAtom;
+import org.apache.stanbol.rules.manager.atoms.StringVariableAtom;
+import org.apache.stanbol.rules.manager.atoms.SubstringAtom;
+import org.apache.stanbol.rules.manager.atoms.SubtractionAtom;
+import org.apache.stanbol.rules.manager.atoms.SumAtom;
+import org.apache.stanbol.rules.manager.atoms.TypedLiteralAtom;
+import org.apache.stanbol.rules.manager.atoms.UnionAtom;
+import org.apache.stanbol.rules.manager.atoms.UpperCaseAtom;
+import org.apache.stanbol.rules.manager.atoms.VariableAtom;
+import com.hp.hpl.jena.rdf.model.ModelFactory;
+import com.hp.hpl.jena.rdf.model.Resource;
+
+/** Token Manager. */
+public class RuleParserImplTokenManager implements RuleParserImplConstants {
+
+ /** Debug output. */
+ public java.io.PrintStream debugStream = System.out;
+
+ /** Set debug output. */
+ public void setDebugStream(java.io.PrintStream ds) {
+ debugStream = ds;
+ }
+
+ private final int jjStopStringLiteralDfa_0(int pos, long active0) {
+ switch (pos) {
+ case 0:
+ if ((active0 & 0x3dffffffe100L) != 0L) {
+ jjmatchedKind = 52;
+ return 1;
+ }
+ if ((active0 & 0x1000000000000L) != 0L) return 8;
+ if ((active0 & 0x800L) != 0L) return 1;
+ return -1;
+ case 1:
+ if ((active0 & 0x1dfffff66000L) != 0L) {
+ if (jjmatchedPos != 1) {
+ jjmatchedKind = 52;
+ jjmatchedPos = 1;
+ }
+ return 1;
+ }
+ if ((active0 & 0x200000098000L) != 0L) return 1;
+ return -1;
+ case 2:
+ if ((active0 & 0x3cc8af706000L) != 0L) {
+ if (jjmatchedPos != 2) {
+ jjmatchedKind = 52;
+ jjmatchedPos = 2;
+ }
+ return 1;
+ }
+ if ((active0 & 0x13750860000L) != 0L) return 1;
+ return -1;
+ case 3:
+ if ((active0 & 0x2cc1aff04000L) != 0L) {
+ jjmatchedKind = 52;
+ jjmatchedPos = 3;
+ return 1;
+ }
+ if ((active0 & 0x100800002000L) != 0L) return 1;
+ return -1;
+ case 4:
+ if ((active0 & 0x40100000000L) != 0L) return 1;
+ if ((active0 & 0x28c0aff04000L) != 0L) {
+ jjmatchedKind = 52;
+ jjmatchedPos = 4;
+ return 1;
+ }
+ return -1;
+ case 5:
+ if ((active0 & 0xa0500000L) != 0L) return 1;
+ if ((active0 & 0x28c00fa04000L) != 0L) {
+ jjmatchedKind = 52;
+ jjmatchedPos = 5;
+ return 1;
+ }
+ return -1;
+ case 6:
+ if ((active0 & 0x200000000000L) != 0L) return 1;
+ if ((active0 & 0x8c00fa04000L) != 0L) {
+ jjmatchedKind = 52;
+ jjmatchedPos = 6;
+ return 1;
+ }
+ return -1;
+ case 7:
+ if ((active0 & 0x8000000L) != 0L) return 1;
+ if ((active0 & 0x8c007a04000L) != 0L) {
+ jjmatchedKind = 52;
+ jjmatchedPos = 7;
+ return 1;
+ }
+ return -1;
+ case 8:
+ if ((active0 & 0xc003804000L) != 0L) return 1;
+ if ((active0 & 0x80004200000L) != 0L) {
+ jjmatchedKind = 52;
+ jjmatchedPos = 8;
+ return 1;
+ }
+ return -1;
+ case 9:
+ if ((active0 & 0x4200000L) != 0L) return 1;
+ if ((active0 & 0x80000000000L) != 0L) {
+ jjmatchedKind = 52;
+ jjmatchedPos = 9;
+ return 1;
+ }
+ return -1;
+ default:
+ return -1;
+ }
+ }
+
+ private final int jjStartNfa_0(int pos, long active0) {
+ return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0), pos + 1);
+ }
+
+ private int jjStopAtPos(int pos, int kind) {
+ jjmatchedKind = kind;
+ jjmatchedPos = pos;
+ return pos + 1;
+ }
+
+ private int jjMoveStringLiteralDfa0_0() {
+ switch (curChar) {
+ case 34:
+ return jjStartNfaWithStates_0(0, 48, 8);
+ case 40:
+ return jjStopAtPos(0, 46);
+ case 41:
+ return jjStopAtPos(0, 47);
+ case 44:
+ return jjStopAtPos(0, 12);
+ case 45:
+ return jjMoveStringLiteralDfa1_0(0x100L);
+ case 46:
+ return jjStartNfaWithStates_0(0, 11, 1);
+ case 47:
+ return jjMoveStringLiteralDfa1_0(0x20L);
+ case 58:
+ return jjStopAtPos(0, 9);
+ case 61:
+ return jjStopAtPos(0, 10);
+ case 91:
+ return jjStopAtPos(0, 49);
+ case 93:
+ return jjStopAtPos(0, 50);
+ case 94:
+ return jjStopAtPos(0, 41);
+ case 99:
+ return jjMoveStringLiteralDfa1_0(0x80020000000L);
+ case 100:
+ return jjMoveStringLiteralDfa1_0(0x1000004000L);
+ case 101:
+ return jjMoveStringLiteralDfa1_0(0x8000000L);
+ case 103:
+ return jjMoveStringLiteralDfa1_0(0x50000L);
+ case 104:
+ return jjMoveStringLiteralDfa1_0(0x40000000L);
+ case 105:
+ return jjMoveStringLiteralDfa1_0(0x200000080000L);
+ case 108:
+ return jjMoveStringLiteralDfa1_0(0x8012428000L);
+ case 109:
+ return jjMoveStringLiteralDfa1_0(0x800000000L);
+ case 110:
+ return jjMoveStringLiteralDfa1_0(0x6100300000L);
+ case 112:
+ return jjMoveStringLiteralDfa1_0(0x100000000000L);
+ case 115:
+ return jjMoveStringLiteralDfa1_0(0x10604802000L);
+ case 117:
+ return jjMoveStringLiteralDfa1_0(0x40001000000L);
+ case 118:
+ return jjMoveStringLiteralDfa1_0(0x80000000L);
+ default:
+ return jjMoveNfa_0(2, 0);
+ }
+ }
+
+ private int jjMoveStringLiteralDfa1_0(long active0) {
+ try {
+ curChar = input_stream.readChar();
+ } catch (java.io.IOException e) {
+ jjStopStringLiteralDfa_0(0, active0);
+ return 1;
+ }
+ switch (curChar) {
+ case 42:
+ if ((active0 & 0x20L) != 0L) return jjStopAtPos(1, 5);
+ break;
+ case 62:
+ if ((active0 & 0x100L) != 0L) return jjStopAtPos(1, 8);
+ break;
+ case 97:
+ return jjMoveStringLiteralDfa2_0(active0, 0x40c0002000L);
+ case 101:
+ return jjMoveStringLiteralDfa2_0(active0, 0x10760000L);
+ case 105:
+ return jjMoveStringLiteralDfa2_0(active0, 0x1000004000L);
+ case 110:
+ return jjMoveStringLiteralDfa2_0(active0, 0x40008000000L);
+ case 111:
+ return jjMoveStringLiteralDfa2_0(active0, 0xa122000000L);
+ case 112:
+ return jjMoveStringLiteralDfa2_0(active0, 0x1000000L);
+ case 114:
+ return jjMoveStringLiteralDfa2_0(active0, 0x180000000000L);
+ case 115:
+ if ((active0 & 0x80000L) != 0L) {
+ jjmatchedKind = 19;
+ jjmatchedPos = 1;
+ }
+ return jjMoveStringLiteralDfa2_0(active0, 0x200000000000L);
+ case 116:
+ if ((active0 & 0x8000L) != 0L) return jjStartNfaWithStates_0(1, 15, 1);
+ else if ((active0 & 0x10000L) != 0L) return jjStartNfaWithStates_0(1, 16, 1);
+ return jjMoveStringLiteralDfa2_0(active0, 0x10004000000L);
+ case 117:
+ return jjMoveStringLiteralDfa2_0(active0, 0xe00800000L);
+ default:
+ break;
+ }
+ return jjStartNfa_0(0, active0);
+ }
+
+ private int jjMoveStringLiteralDfa2_0(long old0, long active0) {
+ if (((active0 &= old0)) == 0L) return jjStartNfa_0(0, old0);
+ try {
+ curChar = input_stream.readChar();
+ } catch (java.io.IOException e) {
+ jjStopStringLiteralDfa_0(1, active0);
+ return 2;
+ }
+ switch (curChar) {
+ case 66:
+ return jjMoveStringLiteralDfa3_0(active0, 0x200000000000L);
+ case 97:
+ return jjMoveStringLiteralDfa3_0(active0, 0x4000000L);
+ case 98:
+ if ((active0 & 0x400000000L) != 0L) {
+ jjmatchedKind = 34;
+ jjmatchedPos = 2;
+ }
+ return jjMoveStringLiteralDfa3_0(active0, 0x800000L);
+ case 99:
+ return jjMoveStringLiteralDfa3_0(active0, 0x8000000000L);
+ case 100:
+ return jjMoveStringLiteralDfa3_0(active0, 0x8000000L);
+ case 101:
+ return jjMoveStringLiteralDfa3_0(active0, 0x80000000000L);
+ case 102:
+ return jjMoveStringLiteralDfa3_0(active0, 0x4000L);
+ case 105:
+ return jjMoveStringLiteralDfa3_0(active0, 0x40000000000L);
+ case 108:
+ return jjMoveStringLiteralDfa3_0(active0, 0x880000000L);
+ case 109:
+ if ((active0 & 0x200000000L) != 0L) return jjStartNfaWithStates_0(2, 33, 1);
+ return jjMoveStringLiteralDfa3_0(active0, 0x4000002000L);
+ case 110:
+ return jjMoveStringLiteralDfa3_0(active0, 0x20400000L);
+ case 111:
+ return jjMoveStringLiteralDfa3_0(active0, 0x100000000000L);
+ case 112:
+ return jjMoveStringLiteralDfa3_0(active0, 0x1000000L);
+ case 113:
+ if ((active0 & 0x20000L) != 0L) return jjStartNfaWithStates_0(2, 17, 1);
+ else if ((active0 & 0x40000L) != 0L) return jjStartNfaWithStates_0(2, 18, 1);
+ break;
+ case 114:
+ if ((active0 & 0x10000000000L) != 0L) return jjStartNfaWithStates_0(2, 40, 1);
+ break;
+ case 115:
+ if ((active0 & 0x40000000L) != 0L) return jjStartNfaWithStates_0(2, 30, 1);
+ break;
+ case 116:
+ if ((active0 & 0x10000000L) != 0L) return jjStartNfaWithStates_0(2, 28, 1);
+ else if ((active0 & 0x2000000000L) != 0L) {
+ jjmatchedKind = 37;
+ jjmatchedPos = 2;
+ }
+ return jjMoveStringLiteralDfa3_0(active0, 0x100000000L);
+ case 118:
+ if ((active0 & 0x1000000000L) != 0L) return jjStartNfaWithStates_0(2, 36, 1);
+ break;
+ case 119:
+ return jjMoveStringLiteralDfa3_0(active0, 0x2300000L);
+ default:
+ break;
+ }
+ return jjStartNfa_0(1, active0);
+ }
+
+ private int jjMoveStringLiteralDfa3_0(long old0, long active0) {
+ if (((active0 &= old0)) == 0L) return jjStartNfa_0(1, old0);
+ try {
+ curChar = input_stream.readChar();
+ } catch (java.io.IOException e) {
+ jjStopStringLiteralDfa_0(2, active0);
+ return 3;
+ }
+ switch (curChar) {
+ case 73:
+ return jjMoveStringLiteralDfa4_0(active0, 0x100000L);
+ case 76:
+ return jjMoveStringLiteralDfa4_0(active0, 0x200000L);
+ case 97:
+ return jjMoveStringLiteralDfa4_0(active0, 0x88000000000L);
+ case 99:
+ return jjMoveStringLiteralDfa4_0(active0, 0x20000000L);
+ case 101:
+ if ((active0 & 0x2000L) != 0L) return jjStartNfaWithStates_0(3, 13, 1);
+ return jjMoveStringLiteralDfa4_0(active0, 0x4103000000L);
+ case 102:
+ return jjMoveStringLiteralDfa4_0(active0, 0x4000L);
+ case 103:
+ return jjMoveStringLiteralDfa4_0(active0, 0x400000L);
+ case 108:
+ return jjMoveStringLiteralDfa4_0(active0, 0x200000000000L);
+ case 111:
+ return jjMoveStringLiteralDfa4_0(active0, 0x40000000000L);
+ case 112:
+ if ((active0 & 0x100000000000L) != 0L) return jjStartNfaWithStates_0(3, 44, 1);
+ break;
+ case 114:
+ return jjMoveStringLiteralDfa4_0(active0, 0x4000000L);
+ case 115:
+ return jjMoveStringLiteralDfa4_0(active0, 0x8800000L);
+ case 116:
+ if ((active0 & 0x800000000L) != 0L) return jjStartNfaWithStates_0(3, 35, 1);
+ break;
+ case 117:
+ return jjMoveStringLiteralDfa4_0(active0, 0x80000000L);
+ default:
+ break;
+ }
+ return jjStartNfa_0(2, active0);
+ }
+
+ private int jjMoveStringLiteralDfa4_0(long old0, long active0) {
+ if (((active0 &= old0)) == 0L) return jjStartNfa_0(2, old0);
+ try {
+ curChar = input_stream.readChar();
+ } catch (java.io.IOException e) {
+ jjStopStringLiteralDfa_0(3, active0);
+ return 4;
+ }
+ switch (curChar) {
+ case 82:
+ return jjMoveStringLiteralDfa5_0(active0, 0x100000L);
+ case 87:
+ return jjMoveStringLiteralDfa5_0(active0, 0x8000000L);
+ case 97:
+ return jjMoveStringLiteralDfa5_0(active0, 0x200020000000L);
+ case 101:
+ return jjMoveStringLiteralDfa5_0(active0, 0x80004000L);
+ case 105:
+ return jjMoveStringLiteralDfa5_0(active0, 0x200000L);
+ case 108:
+ return jjMoveStringLiteralDfa5_0(active0, 0x8000000000L);
+ case 110:
+ if ((active0 & 0x40000000000L) != 0L) return jjStartNfaWithStates_0(4, 42, 1);
+ break;
+ case 114:
+ return jjMoveStringLiteralDfa5_0(active0, 0x3000000L);
+ case 115:
+ return jjMoveStringLiteralDfa5_0(active0, 0x4000000000L);
+ case 116:
+ return jjMoveStringLiteralDfa5_0(active0, 0x80004c00000L);
+ case 120:
+ if ((active0 & 0x100000000L) != 0L) return jjStartNfaWithStates_0(4, 32, 1);
+ break;
+ default:
+ break;
+ }
+ return jjStartNfa_0(3, active0);
+ }
+
+ private int jjMoveStringLiteralDfa5_0(long old0, long active0) {
+ if (((active0 &= old0)) == 0L) return jjStartNfa_0(3, old0);
+ try {
+ curChar = input_stream.readChar();
+ } catch (java.io.IOException e) {
+ jjStopStringLiteralDfa_0(4, active0);
+ return 5;
+ }
+ switch (curChar) {
+ case 67:
+ return jjMoveStringLiteralDfa6_0(active0, 0x3000000L);
+ case 73:
+ if ((active0 & 0x100000L) != 0L) return jjStartNfaWithStates_0(5, 20, 1);
+ break;
+ case 101:
+ return jjMoveStringLiteralDfa6_0(active0, 0x80000000000L);
+ case 104:
+ if ((active0 & 0x400000L) != 0L) return jjStartNfaWithStates_0(5, 22, 1);
+ break;
+ case 105:
+ return jjMoveStringLiteralDfa6_0(active0, 0x8000000L);
+ case 110:
+ return jjMoveStringLiteralDfa6_0(active0, 0x208000000000L);
+ case 112:
+ return jjMoveStringLiteralDfa6_0(active0, 0x4000000000L);
+ case 114:
+ return jjMoveStringLiteralDfa6_0(active0, 0x804000L);
+ case 115:
+ if ((active0 & 0x80000000L) != 0L) return jjStartNfaWithStates_0(5, 31, 1);
+ return jjMoveStringLiteralDfa6_0(active0, 0x4000000L);
+ case 116:
+ if ((active0 & 0x20000000L) != 0L) return jjStartNfaWithStates_0(5, 29, 1);
+ return jjMoveStringLiteralDfa6_0(active0, 0x200000L);
+ default:
+ break;
+ }
+ return jjStartNfa_0(4, active0);
+ }
+
+ private int jjMoveStringLiteralDfa6_0(long old0, long active0) {
+ if (((active0 &= old0)) == 0L) return jjStartNfa_0(4, old0);
+ try {
+ curChar = input_stream.readChar();
+ } catch (java.io.IOException e) {
+ jjStopStringLiteralDfa_0(5, active0);
+ return 6;
+ }
+ switch (curChar) {
+ case 76:
+ return jjMoveStringLiteralDfa7_0(active0, 0x80000000000L);
+ case 87:
+ return jjMoveStringLiteralDfa7_0(active0, 0x4000000L);
+ case 97:
+ return jjMoveStringLiteralDfa7_0(active0, 0xc003000000L);
+ case 101:
+ return jjMoveStringLiteralDfa7_0(active0, 0x204000L);
+ case 105:
+ return jjMoveStringLiteralDfa7_0(active0, 0x800000L);
+ case 107:
+ if ((active0 & 0x200000000000L) != 0L) return jjStartNfaWithStates_0(6, 45, 1);
+ break;
+ case 116:
+ return jjMoveStringLiteralDfa7_0(active0, 0x8000000L);
+ default:
+ break;
+ }
+ return jjStartNfa_0(5, active0);
+ }
+
+ private int jjMoveStringLiteralDfa7_0(long old0, long active0) {
+ if (((active0 &= old0)) == 0L) return jjStartNfa_0(5, old0);
+ try {
+ curChar = input_stream.readChar();
+ } catch (java.io.IOException e) {
+ jjStopStringLiteralDfa_0(6, active0);
+ return 7;
+ }
+ switch (curChar) {
+ case 97:
+ return jjMoveStringLiteralDfa8_0(active0, 0x80000000000L);
+ case 99:
+ return jjMoveStringLiteralDfa8_0(active0, 0x4000000000L);
+ case 104:
+ if ((active0 & 0x8000000L) != 0L) return jjStartNfaWithStates_0(7, 27, 1);
+ break;
+ case 105:
+ return jjMoveStringLiteralDfa8_0(active0, 0x4000000L);
+ case 109:
+ return jjMoveStringLiteralDfa8_0(active0, 0x8000000000L);
+ case 110:
+ return jjMoveStringLiteralDfa8_0(active0, 0x804000L);
+ case 114:
+ return jjMoveStringLiteralDfa8_0(active0, 0x200000L);
+ case 115:
+ return jjMoveStringLiteralDfa8_0(active0, 0x3000000L);
+ default:
+ break;
+ }
+ return jjStartNfa_0(6, active0);
+ }
+
+ private int jjMoveStringLiteralDfa8_0(long old0, long active0) {
+ if (((active0 &= old0)) == 0L) return jjStartNfa_0(6, old0);
+ try {
+ curChar = input_stream.readChar();
+ } catch (java.io.IOException e) {
+ jjStopStringLiteralDfa_0(7, active0);
+ return 8;
+ }
+ switch (curChar) {
+ case 97:
+ return jjMoveStringLiteralDfa9_0(active0, 0x200000L);
+ case 98:
+ return jjMoveStringLiteralDfa9_0(active0, 0x80000000000L);
+ case 101:
+ if ((active0 & 0x1000000L) != 0L) return jjStartNfaWithStates_0(8, 24, 1);
+ else if ((active0 & 0x2000000L) != 0L) return jjStartNfaWithStates_0(8, 25, 1);
+ else if ((active0 & 0x4000000000L) != 0L) return jjStartNfaWithStates_0(8, 38, 1);
+ else if ((active0 & 0x8000000000L) != 0L) return jjStartNfaWithStates_0(8, 39, 1);
+ break;
+ case 103:
+ if ((active0 & 0x800000L) != 0L) return jjStartNfaWithStates_0(8, 23, 1);
+ break;
+ case 116:
+ if ((active0 & 0x4000L) != 0L) return jjStartNfaWithStates_0(8, 14, 1);
+ return jjMoveStringLiteralDfa9_0(active0, 0x4000000L);
+ default:
+ break;
+ }
+ return jjStartNfa_0(7, active0);
+ }
+
+ private int jjMoveStringLiteralDfa9_0(long old0, long active0) {
+ if (((active0 &= old0)) == 0L) return jjStartNfa_0(7, old0);
+ try {
+ curChar = input_stream.readChar();
+ } catch (java.io.IOException e) {
+ jjStopStringLiteralDfa_0(8, active0);
+ return 9;
+ }
+ switch (curChar) {
+ case 101:
+ return jjMoveStringLiteralDfa10_0(active0, 0x80000000000L);
+ case 104:
+ if ((active0 & 0x4000000L) != 0L) return jjStartNfaWithStates_0(9, 26, 1);
+ break;
+ case 108:
+ if ((active0 & 0x200000L) != 0L) return jjStartNfaWithStates_0(9, 21, 1);
+ break;
+ default:
+ break;
+ }
+ return jjStartNfa_0(8, active0);
+ }
+
+ private int jjMoveStringLiteralDfa10_0(long old0, long active0) {
+ if (((active0 &= old0)) == 0L) return jjStartNfa_0(8, old0);
+ try {
+ curChar = input_stream.readChar();
+ } catch (java.io.IOException e) {
+ jjStopStringLiteralDfa_0(9, active0);
+ return 10;
+ }
+ switch (curChar) {
+ case 108:
+ if ((active0 & 0x80000000000L) != 0L) return jjStartNfaWithStates_0(10, 43, 1);
+ break;
+ default:
+ break;
+ }
+ return jjStartNfa_0(9, active0);
+ }
+
+ private int jjStartNfaWithStates_0(int pos, int kind, int state) {
+ jjmatchedKind = kind;
+ jjmatchedPos = pos;
+ try {
+ curChar = input_stream.readChar();
+ } catch (java.io.IOException e) {
+ return pos + 1;
+ }
+ return jjMoveNfa_0(state, pos + 1);
+ }
+
+ private int jjMoveNfa_0(int startState, int curPos) {
+ int startsAt = 0;
+ jjnewStateCnt = 13;
+ int i = 1;
+ jjstateSet[0] = startState;
+ int kind = 0x7fffffff;
+ for (;;) {
+ if (++jjround == 0x7fffffff) ReInitRounds();
+ if (curChar < 64) {
+ long l = 1L << curChar;
+ do {
+ switch (jjstateSet[--i]) {
+ case 2:
+ if ((0x3ff600000000000L & l) != 0L) {
+ if (kind > 52) kind = 52;
+ jjCheckNAdd(1);
+ } else if (curChar == 34) jjCheckNAdd(8);
+ else if (curChar == 60) jjCheckNAdd(5);
+ else if (curChar == 63) jjCheckNAdd(3);
+ if ((0x3ff000000000000L & l) != 0L) {
+ if (kind > 51) kind = 51;
+ jjCheckNAdd(0);
+ }
+ break;
+ case 0:
+ if ((0x3ff000000000000L & l) == 0L) break;
+ if (kind > 51) kind = 51;
+ jjCheckNAdd(0);
+ break;
+ case 1:
+ if ((0x3ff600000000000L & l) == 0L) break;
+ if (kind > 52) kind = 52;
+ jjCheckNAdd(1);
+ break;
+ case 3:
+ if ((0x3ff200000000000L & l) == 0L) break;
+ if (kind > 53) kind = 53;
+ jjCheckNAdd(3);
+ break;
+ case 4:
+ if (curChar == 60) jjCheckNAdd(5);
+ break;
+ case 5:
+ if ((0x7ffe30800000000L & l) != 0L) jjCheckNAddTwoStates(5, 6);
+ break;
+ case 6:
+ if (curChar == 62) kind = 54;
+ break;
+ case 7:
+ if (curChar == 34) jjCheckNAdd(8);
+ break;
+ case 8:
+ if ((0x87ffe03b00000000L & l) != 0L) jjCheckNAddTwoStates(8, 9);
+ break;
+ case 9:
+ if (curChar == 34 && kind > 55) kind = 55;
+ break;
+ case 10:
+ if (curChar == 58) jjCheckNAdd(11);
+ break;
+ case 11:
+ if ((0x3ff600000000000L & l) == 0L) break;
+ if (kind > 56) kind = 56;
+ jjCheckNAdd(11);
+ break;
+ default:
+ break;
+ }
+ } while (i != startsAt);
+ } else if (curChar < 128) {
+ long l = 1L << (curChar & 077);
+ do {
+ switch (jjstateSet[--i]) {
+ case 2:
+ if ((0x7fffffe87fffffeL & l) != 0L) {
+ if (kind > 52) kind = 52;
+ jjCheckNAdd(1);
+ }
+ if (curChar == 95) jjstateSet[jjnewStateCnt++] = 10;
+ break;
+ case 1:
+ if ((0x7fffffe87fffffeL & l) == 0L) break;
+ if (kind > 52) kind = 52;
+ jjCheckNAdd(1);
+ break;
+ case 3:
+ if ((0x7fffffe87fffffeL & l) == 0L) break;
+ if (kind > 53) kind = 53;
+ jjstateSet[jjnewStateCnt++] = 3;
+ break;
+ case 5:
+ if ((0x7fffffe87fffffeL & l) != 0L) jjAddStates(0, 1);
+ break;
+ case 8:
+ if ((0x7fffffe97fffffeL & l) != 0L) jjAddStates(2, 3);
+ break;
+ case 11:
+ if ((0x7fffffe87fffffeL & l) == 0L) break;
+ if (kind > 56) kind = 56;
+ jjstateSet[jjnewStateCnt++] = 11;
+ break;
+ case 12:
+ if (curChar == 95) jjstateSet[jjnewStateCnt++] = 10;
+ break;
+ default:
+ break;
+ }
+ } while (i != startsAt);
+ } else {
+ int i2 = (curChar & 0xff) >> 6;
+ long l2 = 1L << (curChar & 077);
+ do {
+ switch (jjstateSet[--i]) {
+ default:
+ break;
+ }
+ } while (i != startsAt);
+ }
+ if (kind != 0x7fffffff) {
+ jjmatchedKind = kind;
+ jjmatchedPos = curPos;
+ kind = 0x7fffffff;
+ }
+ ++curPos;
+ if ((i = jjnewStateCnt) == (startsAt = 13 - (jjnewStateCnt = startsAt))) return curPos;
+ try {
+ curChar = input_stream.readChar();
+ } catch (java.io.IOException e) {
+ return curPos;
+ }
+ }
+ }
+
+ private int jjMoveStringLiteralDfa0_1() {
+ switch (curChar) {
+ case 42:
+ return jjMoveStringLiteralDfa1_1(0x40L);
+ default:
+ return 1;
+ }
+ }
+
+ private int jjMoveStringLiteralDfa1_1(long active0) {
+ try {
+ curChar = input_stream.readChar();
+ } catch (java.io.IOException e) {
+ return 1;
+ }
+ switch (curChar) {
+ case 47:
+ if ((active0 & 0x40L) != 0L) return jjStopAtPos(1, 6);
+ break;
+ default:
+ return 2;
+ }
+ return 2;
+ }
+
+ static final int[] jjnextStates = {5, 6, 8, 9,};
+
+ /** Token literal values. */
+ public static final String[] jjstrLiteralImages = {"", null, null, null, null, null, null, null,
+ "\55\76", "\72", "\75", "\56", "\54",
+ "\163\141\155\145",
+ "\144\151\146\146\145\162\145\156\164", "\154\164",
+ "\147\164", "\154\145\161", "\147\145\161",
+ "\151\163", "\156\145\167\111\122\111",
+ "\156\145\167\114\151\164\145\162\141\154",
+ "\154\145\156\147\164\150",
+ "\163\165\142\163\164\162\151\156\147",
+ "\165\160\160\145\162\103\141\163\145",
+ "\154\157\167\145\162\103\141\163\145",
+ "\163\164\141\162\164\163\127\151\164\150",
+ "\145\156\144\163\127\151\164\150", "\154\145\164",
+ "\143\157\156\143\141\164", "\150\141\163",
+ "\166\141\154\165\145\163", "\156\157\164\145\170",
+ "\163\165\155", "\163\165\142", "\155\165\154\164",
+ "\144\151\166", "\156\157\164",
+ "\156\141\155\145\163\160\141\143\145",
+ "\154\157\143\141\154\156\141\155\145",
+ "\163\164\162", "\136", "\165\156\151\157\156",
+ "\143\162\145\141\164\145\114\141\142\145\154",
+ "\160\162\157\160", "\151\163\102\154\141\156\153",
+ "\50", "\51", "\42", "\133", "\135", null, null, null,
+ null, null, null,};
+
+ /** Lexer state names. */
+ public static final String[] lexStateNames = {"DEFAULT", "WithinComment",};
+
+ /** Lex State array. */
+ public static final int[] jjnewLexState = {-1, -1, -1, -1, -1, 1, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,};
+ static final long[] jjtoToken = {0x1ffffffffffff01L,};
+ static final long[] jjtoSkip = {0x7eL,};
+ static final long[] jjtoMore = {0x80L,};
+ protected SimpleCharStream input_stream;
+ private final int[] jjrounds = new int[13];
+ private final int[] jjstateSet = new int[26];
+ protected char curChar;
+
+ /** Constructor. */
+ public RuleParserImplTokenManager(SimpleCharStream stream) {
+ if (SimpleCharStream.staticFlag) throw new Error(
+ "ERROR: Cannot use a static CharStream class with a non-static lexical analyzer.");
+ input_stream = stream;
+ }
+
+ /** Constructor. */
+ public RuleParserImplTokenManager(SimpleCharStream stream, int lexState) {
+ this(stream);
+ SwitchTo(lexState);
+ }
+
+ /** Reinitialise parser. */
+ public void ReInit(SimpleCharStream stream) {
+ jjmatchedPos = jjnewStateCnt = 0;
+ curLexState = defaultLexState;
+ input_stream = stream;
+ ReInitRounds();
+ }
+
+ private void ReInitRounds() {
+ int i;
+ jjround = 0x80000001;
+ for (i = 13; i-- > 0;)
+ jjrounds[i] = 0x80000000;
+ }
+
+ /** Reinitialise parser. */
+ public void ReInit(SimpleCharStream stream, int lexState) {
+ ReInit(stream);
+ SwitchTo(lexState);
+ }
+
+ /** Switch to specified lex state. */
+ public void SwitchTo(int lexState) {
+ if (lexState >= 2 || lexState < 0) throw new TokenMgrError("Error: Ignoring invalid lexical state : "
+ + lexState + ". State unchanged.",
+ TokenMgrError.INVALID_LEXICAL_STATE);
+ else curLexState = lexState;
+ }
+
+ protected Token jjFillToken() {
+ final Token t;
+ final String curTokenImage;
+ final int beginLine;
+ final int endLine;
+ final int beginColumn;
+ final int endColumn;
+ String im = jjstrLiteralImages[jjmatchedKind];
+ curTokenImage = (im == null) ? input_stream.GetImage() : im;
+ beginLine = input_stream.getBeginLine();
+ beginColumn = input_stream.getBeginColumn();
+ endLine = input_stream.getEndLine();
+ endColumn = input_stream.getEndColumn();
+ t = Token.newToken(jjmatchedKind, curTokenImage);
+
+ t.beginLine = beginLine;
+ t.endLine = endLine;
+ t.beginColumn = beginColumn;
+ t.endColumn = endColumn;
+
+ return t;
+ }
+
+ int curLexState = 0;
+ int defaultLexState = 0;
+ int jjnewStateCnt;
+ int jjround;
+ int jjmatchedPos;
+ int jjmatchedKind;
+
+ /** Get the next Token. */
+ public Token getNextToken() {
+ Token matchedToken;
+ int curPos = 0;
+
+ EOFLoop: for (;;) {
+ try {
+ curChar = input_stream.BeginToken();
+ } catch (java.io.IOException e) {
+ jjmatchedKind = 0;
+ matchedToken = jjFillToken();
+ return matchedToken;
+ }
+
+ for (;;) {
+ switch (curLexState) {
+ case 0:
+ try {
+ input_stream.backup(0);
+ while (curChar <= 32 && (0x100002600L & (1L << curChar)) != 0L)
+ curChar = input_stream.BeginToken();
+ } catch (java.io.IOException e1) {
+ continue EOFLoop;
+ }
+ jjmatchedKind = 0x7fffffff;
+ jjmatchedPos = 0;
+ curPos = jjMoveStringLiteralDfa0_0();
+ break;
+ case 1:
+ jjmatchedKind = 0x7fffffff;
+ jjmatchedPos = 0;
+ curPos = jjMoveStringLiteralDfa0_1();
+ if (jjmatchedPos == 0 && jjmatchedKind > 7) {
+ jjmatchedKind = 7;
+ }
+ break;
+ }
+ if (jjmatchedKind != 0x7fffffff) {
+ if (jjmatchedPos + 1 < curPos) input_stream.backup(curPos - jjmatchedPos - 1);
+ if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) {
+ matchedToken = jjFillToken();
+ if (jjnewLexState[jjmatchedKind] != -1) curLexState = jjnewLexState[jjmatchedKind];
+ return matchedToken;
+ } else if ((jjtoSkip[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) {
+ if (jjnewLexState[jjmatchedKind] != -1) curLexState = jjnewLexState[jjmatchedKind];
+ continue EOFLoop;
+ }
+ if (jjnewLexState[jjmatchedKind] != -1) curLexState = jjnewLexState[jjmatchedKind];
+ curPos = 0;
+ jjmatchedKind = 0x7fffffff;
+ try {
+ curChar = input_stream.readChar();
+ continue;
+ } catch (java.io.IOException e1) {}
+ }
+ int error_line = input_stream.getEndLine();
+ int error_column = input_stream.getEndColumn();
+ String error_after = null;
+ boolean EOFSeen = false;
+ try {
+ input_stream.readChar();
+ input_stream.backup(1);
+ } catch (java.io.IOException e1) {
+ EOFSeen = true;
+ error_after = curPos <= 1 ? "" : input_stream.GetImage();
+ if (curChar == '\n' || curChar == '\r') {
+ error_line++;
+ error_column = 0;
+ } else error_column++;
+ }
+ if (!EOFSeen) {
+ input_stream.backup(1);
+ error_after = curPos <= 1 ? "" : input_stream.GetImage();
+ }
+ throw new TokenMgrError(EOFSeen, curLexState, error_line, error_column, error_after, curChar,
+ TokenMgrError.LEXICAL_ERROR);
+ }
+ }
+ }
+
+ 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);
+ }
+
+}
Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/SimpleCharStream.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/SimpleCharStream.java?rev=1306390&r1=1306389&r2=1306390&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/SimpleCharStream.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/SimpleCharStream.java Wed Mar 28 15:00:06 2012
@@ -1,487 +1,415 @@
/*
-* 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.
-*/
+ * 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. SimpleCharStream.java Version 5.0 */
/* JavaCCOptions:STATIC=false,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */
package org.apache.stanbol.rules.manager.parse;
/**
- * An implementation of interface CharStream, where the stream is assumed to
- * contain only ASCII characters (without unicode processing).
+ * An implementation of interface CharStream, where the stream is assumed to contain only ASCII characters
+ * (without unicode processing).
*/
-public class SimpleCharStream
-{
-/** Whether parser is static. */
- public static final boolean staticFlag = false;
- int bufsize;
- int available;
- int tokenBegin;
-/** Position in buffer. */
- public int bufpos = -1;
- protected int bufline[];
- protected int bufcolumn[];
-
- protected int column = 0;
- protected int line = 1;
-
- protected boolean prevCharIsCR = false;
- protected boolean prevCharIsLF = false;
-
- protected java.io.Reader inputStream;
-
- protected char[] buffer;
- protected int maxNextCharInd = 0;
- protected int inBuf = 0;
- protected int tabSize = 8;
-
- protected void setTabSize(int i) { tabSize = i; }
- protected int getTabSize(int i) { return tabSize; }
-
-
- protected void ExpandBuff(boolean wrapAround)
- {
- char[] newbuffer = new char[bufsize + 2048];
- int newbufline[] = new int[bufsize + 2048];
- int newbufcolumn[] = new int[bufsize + 2048];
-
- try
- {
- if (wrapAround)
- {
- System.arraycopy(buffer, tokenBegin, newbuffer, 0, bufsize - tokenBegin);
- System.arraycopy(buffer, 0, newbuffer, bufsize - tokenBegin, bufpos);
- buffer = newbuffer;
-
- System.arraycopy(bufline, tokenBegin, newbufline, 0, bufsize - tokenBegin);
- System.arraycopy(bufline, 0, newbufline, bufsize - tokenBegin, bufpos);
- bufline = newbufline;
-
- System.arraycopy(bufcolumn, tokenBegin, newbufcolumn, 0, bufsize - tokenBegin);
- System.arraycopy(bufcolumn, 0, newbufcolumn, bufsize - tokenBegin, bufpos);
- bufcolumn = newbufcolumn;
-
- maxNextCharInd = (bufpos += (bufsize - tokenBegin));
- }
- else
- {
- System.arraycopy(buffer, tokenBegin, newbuffer, 0, bufsize - tokenBegin);
- buffer = newbuffer;
-
- System.arraycopy(bufline, tokenBegin, newbufline, 0, bufsize - tokenBegin);
- bufline = newbufline;
-
- System.arraycopy(bufcolumn, tokenBegin, newbufcolumn, 0, bufsize - tokenBegin);
- bufcolumn = newbufcolumn;
-
- maxNextCharInd = (bufpos -= tokenBegin);
- }
- }
- catch (Throwable t)
- {
- throw new Error(t.getMessage());
- }
-
-
- bufsize += 2048;
- available = bufsize;
- tokenBegin = 0;
- }
-
- protected void FillBuff() throws java.io.IOException
- {
- if (maxNextCharInd == available)
- {
- if (available == bufsize)
- {
- if (tokenBegin > 2048)
- {
- bufpos = maxNextCharInd = 0;
- available = tokenBegin;
- }
- else if (tokenBegin < 0)
- bufpos = maxNextCharInd = 0;
- else
- ExpandBuff(false);
- }
- else if (available > tokenBegin)
+public class SimpleCharStream {
+ /** Whether parser is static. */
+ public static final boolean staticFlag = false;
+ int bufsize;
+ int available;
+ int tokenBegin;
+ /** Position in buffer. */
+ public int bufpos = -1;
+ protected int bufline[];
+ protected int bufcolumn[];
+
+ protected int column = 0;
+ protected int line = 1;
+
+ protected boolean prevCharIsCR = false;
+ protected boolean prevCharIsLF = false;
+
+ protected java.io.Reader inputStream;
+
+ protected char[] buffer;
+ protected int maxNextCharInd = 0;
+ protected int inBuf = 0;
+ protected int tabSize = 8;
+
+ protected void setTabSize(int i) {
+ tabSize = i;
+ }
+
+ protected int getTabSize(int i) {
+ return tabSize;
+ }
+
+ protected void ExpandBuff(boolean wrapAround) {
+ char[] newbuffer = new char[bufsize + 2048];
+ int newbufline[] = new int[bufsize + 2048];
+ int newbufcolumn[] = new int[bufsize + 2048];
+
+ try {
+ if (wrapAround) {
+ System.arraycopy(buffer, tokenBegin, newbuffer, 0, bufsize - tokenBegin);
+ System.arraycopy(buffer, 0, newbuffer, bufsize - tokenBegin, bufpos);
+ buffer = newbuffer;
+
+ System.arraycopy(bufline, tokenBegin, newbufline, 0, bufsize - tokenBegin);
+ System.arraycopy(bufline, 0, newbufline, bufsize - tokenBegin, bufpos);
+ bufline = newbufline;
+
+ System.arraycopy(bufcolumn, tokenBegin, newbufcolumn, 0, bufsize - tokenBegin);
+ System.arraycopy(bufcolumn, 0, newbufcolumn, bufsize - tokenBegin, bufpos);
+ bufcolumn = newbufcolumn;
+
+ maxNextCharInd = (bufpos += (bufsize - tokenBegin));
+ } else {
+ System.arraycopy(buffer, tokenBegin, newbuffer, 0, bufsize - tokenBegin);
+ buffer = newbuffer;
+
+ System.arraycopy(bufline, tokenBegin, newbufline, 0, bufsize - tokenBegin);
+ bufline = newbufline;
+
+ System.arraycopy(bufcolumn, tokenBegin, newbufcolumn, 0, bufsize - tokenBegin);
+ bufcolumn = newbufcolumn;
+
+ maxNextCharInd = (bufpos -= tokenBegin);
+ }
+ } catch (Throwable t) {
+ throw new Error(t.getMessage());
+ }
+
+ bufsize += 2048;
available = bufsize;
- else if ((tokenBegin - available) < 2048)
- ExpandBuff(true);
- else
- available = tokenBegin;
- }
-
- int i;
- try {
- if ((i = inputStream.read(buffer, maxNextCharInd, available - maxNextCharInd)) == -1)
- {
- inputStream.close();
- throw new java.io.IOException();
- }
- else
- maxNextCharInd += i;
- return;
- }
- catch(java.io.IOException e) {
- --bufpos;
- backup(0);
- if (tokenBegin == -1)
+ tokenBegin = 0;
+ }
+
+ protected void FillBuff() throws java.io.IOException {
+ if (maxNextCharInd == available) {
+ if (available == bufsize) {
+ if (tokenBegin > 2048) {
+ bufpos = maxNextCharInd = 0;
+ available = tokenBegin;
+ } else if (tokenBegin < 0) bufpos = maxNextCharInd = 0;
+ else ExpandBuff(false);
+ } else if (available > tokenBegin) available = bufsize;
+ else if ((tokenBegin - available) < 2048) ExpandBuff(true);
+ else available = tokenBegin;
+ }
+
+ int i;
+ try {
+ if ((i = inputStream.read(buffer, maxNextCharInd, available - maxNextCharInd)) == -1) {
+ inputStream.close();
+ throw new java.io.IOException();
+ } else maxNextCharInd += i;
+ return;
+ } catch (java.io.IOException e) {
+ --bufpos;
+ backup(0);
+ if (tokenBegin == -1) tokenBegin = bufpos;
+ throw e;
+ }
+ }
+
+ /** Start. */
+ public char BeginToken() throws java.io.IOException {
+ tokenBegin = -1;
+ char c = readChar();
tokenBegin = bufpos;
- throw e;
+
+ return c;
+ }
+
+ protected void UpdateLineColumn(char c) {
+ column++;
+
+ if (prevCharIsLF) {
+ prevCharIsLF = false;
+ line += (column = 1);
+ } else if (prevCharIsCR) {
+ prevCharIsCR = false;
+ if (c == '\n') {
+ prevCharIsLF = true;
+ } else line += (column = 1);
+ }
+
+ switch (c) {
+ case '\r':
+ prevCharIsCR = true;
+ break;
+ case '\n':
+ prevCharIsLF = true;
+ break;
+ case '\t':
+ column--;
+ column += (tabSize - (column % tabSize));
+ break;
+ default:
+ break;
+ }
+
+ bufline[bufpos] = line;
+ bufcolumn[bufpos] = column;
+ }
+
+ /** Read a character. */
+ public char readChar() throws java.io.IOException {
+ if (inBuf > 0) {
+ --inBuf;
+
+ if (++bufpos == bufsize) bufpos = 0;
+
+ return buffer[bufpos];
+ }
+
+ if (++bufpos >= maxNextCharInd) FillBuff();
+
+ char c = buffer[bufpos];
+
+ UpdateLineColumn(c);
+ return c;
+ }
+
+ @Deprecated
+ /**
+ * @deprecated
+ * @see #getEndColumn
+ */
+ public int getColumn() {
+ return bufcolumn[bufpos];
+ }
+
+ @Deprecated
+ /**
+ * @deprecated
+ * @see #getEndLine
+ */
+ public int getLine() {
+ return bufline[bufpos];
+ }
+
+ /** Get token end column number. */
+ public int getEndColumn() {
+ return bufcolumn[bufpos];
+ }
+
+ /** Get token end line number. */
+ public int getEndLine() {
+ return bufline[bufpos];
+ }
+
+ /** Get token beginning column number. */
+ public int getBeginColumn() {
+ return bufcolumn[tokenBegin];
+ }
+
+ /** Get token beginning line number. */
+ public int getBeginLine() {
+ return bufline[tokenBegin];
+ }
+
+ /** Backup a number of characters. */
+ public void backup(int amount) {
+
+ inBuf += amount;
+ if ((bufpos -= amount) < 0) bufpos += bufsize;
+ }
+
+ /** Constructor. */
+ public SimpleCharStream(java.io.Reader dstream, int startline, int startcolumn, int buffersize) {
+ inputStream = dstream;
+ line = startline;
+ column = startcolumn - 1;
+
+ available = bufsize = buffersize;
+ buffer = new char[buffersize];
+ bufline = new int[buffersize];
+ bufcolumn = new int[buffersize];
+ }
+
+ /** Constructor. */
+ public SimpleCharStream(java.io.Reader dstream, int startline, int startcolumn) {
+ this(dstream, startline, startcolumn, 4096);
+ }
+
+ /** Constructor. */
+ public SimpleCharStream(java.io.Reader dstream) {
+ this(dstream, 1, 1, 4096);
}
- }
-/** Start. */
- public char BeginToken() throws java.io.IOException
- {
- tokenBegin = -1;
- char c = readChar();
- tokenBegin = bufpos;
-
- return c;
- }
-
- protected void UpdateLineColumn(char c)
- {
- column++;
-
- if (prevCharIsLF)
- {
- prevCharIsLF = false;
- line += (column = 1);
- }
- else if (prevCharIsCR)
- {
- prevCharIsCR = false;
- if (c == '\n')
- {
- prevCharIsLF = true;
- }
- else
- line += (column = 1);
- }
-
- switch (c)
- {
- case '\r' :
- prevCharIsCR = true;
- break;
- case '\n' :
- prevCharIsLF = true;
- break;
- case '\t' :
- column--;
- column += (tabSize - (column % tabSize));
- break;
- default :
- break;
- }
-
- bufline[bufpos] = line;
- bufcolumn[bufpos] = column;
- }
-
-/** Read a character. */
- public char readChar() throws java.io.IOException
- {
- if (inBuf > 0)
- {
- --inBuf;
-
- if (++bufpos == bufsize)
- bufpos = 0;
-
- return buffer[bufpos];
- }
-
- if (++bufpos >= maxNextCharInd)
- FillBuff();
-
- char c = buffer[bufpos];
-
- UpdateLineColumn(c);
- return c;
- }
-
- @Deprecated
- /**
- * @deprecated
- * @see #getEndColumn
- */
-
- public int getColumn() {
- return bufcolumn[bufpos];
- }
-
- @Deprecated
- /**
- * @deprecated
- * @see #getEndLine
- */
-
- public int getLine() {
- return bufline[bufpos];
- }
-
- /** Get token end column number. */
- public int getEndColumn() {
- return bufcolumn[bufpos];
- }
-
- /** Get token end line number. */
- public int getEndLine() {
- return bufline[bufpos];
- }
-
- /** Get token beginning column number. */
- public int getBeginColumn() {
- return bufcolumn[tokenBegin];
- }
-
- /** Get token beginning line number. */
- public int getBeginLine() {
- return bufline[tokenBegin];
- }
-
-/** Backup a number of characters. */
- public void backup(int amount) {
-
- inBuf += amount;
- if ((bufpos -= amount) < 0)
- bufpos += bufsize;
- }
-
- /** Constructor. */
- public SimpleCharStream(java.io.Reader dstream, int startline,
- int startcolumn, int buffersize)
- {
- inputStream = dstream;
- line = startline;
- column = startcolumn - 1;
-
- available = bufsize = buffersize;
- buffer = new char[buffersize];
- bufline = new int[buffersize];
- bufcolumn = new int[buffersize];
- }
-
- /** Constructor. */
- public SimpleCharStream(java.io.Reader dstream, int startline,
- int startcolumn)
- {
- this(dstream, startline, startcolumn, 4096);
- }
-
- /** Constructor. */
- public SimpleCharStream(java.io.Reader dstream)
- {
- this(dstream, 1, 1, 4096);
- }
-
- /** Reinitialise. */
- public void ReInit(java.io.Reader dstream, int startline,
- int startcolumn, int buffersize)
- {
- inputStream = dstream;
- line = startline;
- column = startcolumn - 1;
-
- if (buffer == null || buffersize != buffer.length)
- {
- available = bufsize = buffersize;
- buffer = new char[buffersize];
- bufline = new int[buffersize];
- bufcolumn = new int[buffersize];
- }
- prevCharIsLF = prevCharIsCR = false;
- tokenBegin = inBuf = maxNextCharInd = 0;
- bufpos = -1;
- }
-
- /** Reinitialise. */
- public void ReInit(java.io.Reader dstream, int startline,
- int startcolumn)
- {
- ReInit(dstream, startline, startcolumn, 4096);
- }
-
- /** Reinitialise. */
- public void ReInit(java.io.Reader dstream)
- {
- ReInit(dstream, 1, 1, 4096);
- }
- /** Constructor. */
- public SimpleCharStream(java.io.InputStream dstream, String encoding, int startline,
- int startcolumn, int buffersize) throws java.io.UnsupportedEncodingException
- {
- this(encoding == null ? new java.io.InputStreamReader(dstream) : new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize);
- }
-
- /** Constructor. */
- public SimpleCharStream(java.io.InputStream dstream, int startline,
- int startcolumn, int buffersize)
- {
- this(new java.io.InputStreamReader(dstream), startline, startcolumn, buffersize);
- }
-
- /** Constructor. */
- public SimpleCharStream(java.io.InputStream dstream, String encoding, int startline,
- int startcolumn) throws java.io.UnsupportedEncodingException
- {
- this(dstream, encoding, startline, startcolumn, 4096);
- }
-
- /** Constructor. */
- public SimpleCharStream(java.io.InputStream dstream, int startline,
- int startcolumn)
- {
- this(dstream, startline, startcolumn, 4096);
- }
-
- /** Constructor. */
- public SimpleCharStream(java.io.InputStream dstream, String encoding) throws java.io.UnsupportedEncodingException
- {
- this(dstream, encoding, 1, 1, 4096);
- }
-
- /** Constructor. */
- public SimpleCharStream(java.io.InputStream dstream)
- {
- this(dstream, 1, 1, 4096);
- }
-
- /** Reinitialise. */
- public void ReInit(java.io.InputStream dstream, String encoding, int startline,
- int startcolumn, int buffersize) throws java.io.UnsupportedEncodingException
- {
- ReInit(encoding == null ? new java.io.InputStreamReader(dstream) : new java.io.InputStreamReader(dstream, encoding), startline, startcolumn, buffersize);
- }
-
- /** Reinitialise. */
- public void ReInit(java.io.InputStream dstream, int startline,
- int startcolumn, int buffersize)
- {
- ReInit(new java.io.InputStreamReader(dstream), startline, startcolumn, buffersize);
- }
-
- /** Reinitialise. */
- public void ReInit(java.io.InputStream dstream, String encoding) throws java.io.UnsupportedEncodingException
- {
- ReInit(dstream, encoding, 1, 1, 4096);
- }
-
- /** Reinitialise. */
- public void ReInit(java.io.InputStream dstream)
- {
- ReInit(dstream, 1, 1, 4096);
- }
- /** Reinitialise. */
- public void ReInit(java.io.InputStream dstream, String encoding, int startline,
- int startcolumn) throws java.io.UnsupportedEncodingException
- {
- ReInit(dstream, encoding, startline, startcolumn, 4096);
- }
- /** Reinitialise. */
- public void ReInit(java.io.InputStream dstream, int startline,
- int startcolumn)
- {
- ReInit(dstream, startline, startcolumn, 4096);
- }
- /** Get token literal value. */
- public String GetImage()
- {
- if (bufpos >= tokenBegin)
- return new String(buffer, tokenBegin, bufpos - tokenBegin + 1);
- else
- return new String(buffer, tokenBegin, bufsize - tokenBegin) +
- new String(buffer, 0, bufpos + 1);
- }
-
- /** Get the suffix. */
- public char[] GetSuffix(int len)
- {
- char[] ret = new char[len];
-
- if ((bufpos + 1) >= len)
- System.arraycopy(buffer, bufpos - len + 1, ret, 0, len);
- else
- {
- System.arraycopy(buffer, bufsize - (len - bufpos - 1), ret, 0,
- len - bufpos - 1);
- System.arraycopy(buffer, 0, ret, len - bufpos - 1, bufpos + 1);
- }
-
- return ret;
- }
-
- /** Reset buffer when finished. */
- public void Done()
- {
- buffer = null;
- bufline = null;
- bufcolumn = null;
- }
-
- /**
- * Method to adjust line and column numbers for the start of a token.
- */
- public void adjustBeginLineColumn(int newLine, int newCol)
- {
- int start = tokenBegin;
- int len;
-
- if (bufpos >= tokenBegin)
- {
- len = bufpos - tokenBegin + inBuf + 1;
- }
- else
- {
- len = bufsize - tokenBegin + bufpos + 1 + inBuf;
- }
-
- int i = 0, j = 0, k = 0;
- int nextColDiff = 0, columnDiff = 0;
-
- while (i < len && bufline[j = start % bufsize] == bufline[k = ++start % bufsize])
- {
- bufline[j] = newLine;
- nextColDiff = columnDiff + bufcolumn[k] - bufcolumn[j];
- bufcolumn[j] = newCol + columnDiff;
- columnDiff = nextColDiff;
- i++;
- }
-
- if (i < len)
- {
- bufline[j] = newLine++;
- bufcolumn[j] = newCol + columnDiff;
-
- while (i++ < len)
- {
- if (bufline[j = start % bufsize] != bufline[++start % bufsize])
- bufline[j] = newLine++;
- else
- bufline[j] = newLine;
- }
- }
-
- line = bufline[j];
- column = bufcolumn[j];
- }
+ /** Reinitialise. */
+ public void ReInit(java.io.Reader dstream, int startline, int startcolumn, int buffersize) {
+ inputStream = dstream;
+ line = startline;
+ column = startcolumn - 1;
+
+ if (buffer == null || buffersize != buffer.length) {
+ available = bufsize = buffersize;
+ buffer = new char[buffersize];
+ bufline = new int[buffersize];
+ bufcolumn = new int[buffersize];
+ }
+ prevCharIsLF = prevCharIsCR = false;
+ tokenBegin = inBuf = maxNextCharInd = 0;
+ bufpos = -1;
+ }
+
+ /** Reinitialise. */
+ public void ReInit(java.io.Reader dstream, int startline, int startcolumn) {
+ ReInit(dstream, startline, startcolumn, 4096);
+ }
+
+ /** Reinitialise. */
+ public void ReInit(java.io.Reader dstream) {
+ ReInit(dstream, 1, 1, 4096);
+ }
+
+ /** Constructor. */
+ public SimpleCharStream(java.io.InputStream dstream,
+ String encoding,
+ int startline,
+ int startcolumn,
+ int buffersize) throws java.io.UnsupportedEncodingException {
+ this(encoding == null ? new java.io.InputStreamReader(dstream) : new java.io.InputStreamReader(
+ dstream, encoding), startline, startcolumn, buffersize);
+ }
+
+ /** Constructor. */
+ public SimpleCharStream(java.io.InputStream dstream, int startline, int startcolumn, int buffersize) {
+ this(new java.io.InputStreamReader(dstream), startline, startcolumn, buffersize);
+ }
+
+ /** Constructor. */
+ public SimpleCharStream(java.io.InputStream dstream, String encoding, int startline, int startcolumn) throws java.io.UnsupportedEncodingException {
+ this(dstream, encoding, startline, startcolumn, 4096);
+ }
+
+ /** Constructor. */
+ public SimpleCharStream(java.io.InputStream dstream, int startline, int startcolumn) {
+ this(dstream, startline, startcolumn, 4096);
+ }
+
+ /** Constructor. */
+ public SimpleCharStream(java.io.InputStream dstream, String encoding) throws java.io.UnsupportedEncodingException {
+ this(dstream, encoding, 1, 1, 4096);
+ }
+
+ /** Constructor. */
+ public SimpleCharStream(java.io.InputStream dstream) {
+ this(dstream, 1, 1, 4096);
+ }
+
+ /** Reinitialise. */
+ public void ReInit(java.io.InputStream dstream,
+ String encoding,
+ int startline,
+ int startcolumn,
+ int buffersize) throws java.io.UnsupportedEncodingException {
+ ReInit(encoding == null ? new java.io.InputStreamReader(dstream) : new java.io.InputStreamReader(
+ dstream, encoding), startline, startcolumn, buffersize);
+ }
+
+ /** Reinitialise. */
+ public void ReInit(java.io.InputStream dstream, int startline, int startcolumn, int buffersize) {
+ ReInit(new java.io.InputStreamReader(dstream), startline, startcolumn, buffersize);
+ }
+
+ /** Reinitialise. */
+ public void ReInit(java.io.InputStream dstream, String encoding) throws java.io.UnsupportedEncodingException {
+ ReInit(dstream, encoding, 1, 1, 4096);
+ }
+
+ /** Reinitialise. */
+ public void ReInit(java.io.InputStream dstream) {
+ ReInit(dstream, 1, 1, 4096);
+ }
+
+ /** Reinitialise. */
+ public void ReInit(java.io.InputStream dstream, String encoding, int startline, int startcolumn) throws java.io.UnsupportedEncodingException {
+ ReInit(dstream, encoding, startline, startcolumn, 4096);
+ }
+
+ /** Reinitialise. */
+ public void ReInit(java.io.InputStream dstream, int startline, int startcolumn) {
+ ReInit(dstream, startline, startcolumn, 4096);
+ }
+
+ /** Get token literal value. */
+ public String GetImage() {
+ if (bufpos >= tokenBegin) return new String(buffer, tokenBegin, bufpos - tokenBegin + 1);
+ else return new String(buffer, tokenBegin, bufsize - tokenBegin) + new String(buffer, 0, bufpos + 1);
+ }
+
+ /** Get the suffix. */
+ public char[] GetSuffix(int len) {
+ char[] ret = new char[len];
+
+ if ((bufpos + 1) >= len) System.arraycopy(buffer, bufpos - len + 1, ret, 0, len);
+ else {
+ System.arraycopy(buffer, bufsize - (len - bufpos - 1), ret, 0, len - bufpos - 1);
+ System.arraycopy(buffer, 0, ret, len - bufpos - 1, bufpos + 1);
+ }
+
+ return ret;
+ }
+
+ /** Reset buffer when finished. */
+ public void Done() {
+ buffer = null;
+ bufline = null;
+ bufcolumn = null;
+ }
+
+ /**
+ * Method to adjust line and column numbers for the start of a token.
+ */
+ public void adjustBeginLineColumn(int newLine, int newCol) {
+ int start = tokenBegin;
+ int len;
+
+ if (bufpos >= tokenBegin) {
+ len = bufpos - tokenBegin + inBuf + 1;
+ } else {
+ len = bufsize - tokenBegin + bufpos + 1 + inBuf;
+ }
+
+ int i = 0, j = 0, k = 0;
+ int nextColDiff = 0, columnDiff = 0;
+
+ while (i < len && bufline[j = start % bufsize] == bufline[k = ++start % bufsize]) {
+ bufline[j] = newLine;
+ nextColDiff = columnDiff + bufcolumn[k] - bufcolumn[j];
+ bufcolumn[j] = newCol + columnDiff;
+ columnDiff = nextColDiff;
+ i++;
+ }
+
+ if (i < len) {
+ bufline[j] = newLine++;
+ bufcolumn[j] = newCol + columnDiff;
+
+ while (i++ < len) {
+ if (bufline[j = start % bufsize] != bufline[++start % bufsize]) bufline[j] = newLine++;
+ else bufline[j] = newLine;
+ }
+ }
+
+ line = bufline[j];
+ column = bufcolumn[j];
+ }
}
/* JavaCC - OriginalChecksum=296b46b529ae054e669055c0bbf65487 (do not edit this line) */
Modified: incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/Token.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/Token.java?rev=1306390&r1=1306389&r2=1306390&view=diff
==============================================================================
--- incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/Token.java (original)
+++ incubator/stanbol/trunk/rules/manager/src/main/java/org/apache/stanbol/rules/manager/parse/Token.java Wed Mar 28 15:00:06 2012
@@ -1,19 +1,19 @@
/*
-* 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.
-*/
+ * 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. Token.java Version 5.0 */
/* JavaCCOptions:TOKEN_EXTENDS=,KEEP_LINE_COL=null,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */
package org.apache.stanbol.rules.manager.parse;
@@ -24,124 +24,109 @@ package org.apache.stanbol.rules.manager
public class Token implements java.io.Serializable {
- /**
- * The version identifier for this Serializable class.
- * Increment only if the <i>serialized</i> form of the
- * class changes.
- */
- private static final long serialVersionUID = 1L;
-
- /**
- * An integer that describes the kind of this token. This numbering
- * system is determined by JavaCCParser, and a table of these numbers is
- * stored in the file ...Constants.java.
- */
- public int kind;
-
- /** The line number of the first character of this Token. */
- public int beginLine;
- /** The column number of the first character of this Token. */
- public int beginColumn;
- /** The line number of the last character of this Token. */
- public int endLine;
- /** The column number of the last character of this Token. */
- public int endColumn;
-
- /**
- * The string image of the token.
- */
- public String image;
-
- /**
- * 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
- * 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.
- */
- public Token next;
-
- /**
- * 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
- * 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).
- * 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.
- */
- public Token specialToken;
-
- /**
- * An optional attribute value of the Token.
- * Tokens which are not used as syntactic sugar will often contain
- * meaningful values that will be used later on by the compiler or
- * interpreter. This attribute value is often different from the image.
- * Any subclass of Token that actually wants to return a non-null value can
- * override this method as appropriate.
- */
- public Object getValue() {
- return null;
- }
-
- /**
- * No-argument constructor
- */
- public Token() {}
-
- /**
- * Constructs a new token for the specified Image.
- */
- public Token(int kind)
- {
- this(kind, null);
- }
-
- /**
- * Constructs a new token for the specified Image and Kind.
- */
- public Token(int kind, String image)
- {
- this.kind = kind;
- this.image = image;
- }
-
- /**
- * Returns the image.
- */
- public String toString()
- {
- return image;
- }
-
- /**
- * Returns a new Token object, by default. However, if you want, you
- * can create and return subclass objects based on the value of ofKind.
- * Simply add the cases to the switch for all those special cases.
- * For example, if you have a subclass of Token called IDToken that
- * you want to create if ofKind is ID, simply add something like :
- *
- * case MyParserConstants.ID : return new IDToken(ofKind, image);
- *
- * to the following switch statement. Then you can cast matchedToken
- * variable to the appropriate type and use sit in your lexical actions.
- */
- public static Token newToken(int ofKind, String image)
- {
- switch(ofKind)
- {
- default : return new Token(ofKind, image);
- }
- }
-
- public static Token newToken(int ofKind)
- {
- return newToken(ofKind, null);
- }
+ /**
+ * The version identifier for this Serializable class. Increment only if the <i>serialized</i> form of the
+ * class changes.
+ */
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * An integer that describes the kind of this token. This numbering system is determined by JavaCCParser,
+ * and a table of these numbers is stored in the file ...Constants.java.
+ */
+ public int kind;
+
+ /** The line number of the first character of this Token. */
+ public int beginLine;
+ /** The column number of the first character of this Token. */
+ public int beginColumn;
+ /** The line number of the last character of this Token. */
+ public int endLine;
+ /** The column number of the last character of this Token. */
+ public int endColumn;
+
+ /**
+ * The string image of the token.
+ */
+ public String image;
+
+ /**
+ * 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 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.
+ */
+ public Token next;
+
+ /**
+ * 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 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). 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.
+ */
+ public Token specialToken;
+
+ /**
+ * An optional attribute value of the Token. Tokens which are not used as syntactic sugar will often
+ * contain meaningful values that will be used later on by the compiler or interpreter. This attribute
+ * value is often different from the image. Any subclass of Token that actually wants to return a non-null
+ * value can override this method as appropriate.
+ */
+ public Object getValue() {
+ return null;
+ }
+
+ /**
+ * No-argument constructor
+ */
+ public Token() {}
+
+ /**
+ * Constructs a new token for the specified Image.
+ */
+ public Token(int kind) {
+ this(kind, null);
+ }
+
+ /**
+ * Constructs a new token for the specified Image and Kind.
+ */
+ public Token(int kind, String image) {
+ this.kind = kind;
+ this.image = image;
+ }
+
+ /**
+ * Returns the image.
+ */
+ public String toString() {
+ return image;
+ }
+
+ /**
+ * Returns a new Token object, by default. However, if you want, you can create and return subclass
+ * objects based on the value of ofKind. Simply add the cases to the switch for all those special cases.
+ * For example, if you have a subclass of Token called IDToken that you want to create if ofKind is ID,
+ * simply add something like :
+ *
+ * case MyParserConstants.ID : return new IDToken(ofKind, image);
+ *
+ * to the following switch statement. Then you can cast matchedToken variable to the appropriate type and
+ * use sit in your lexical actions.
+ */
+ public static Token newToken(int ofKind, String image) {
+ switch (ofKind) {
+ default:
+ return new Token(ofKind, image);
+ }
+ }
+
+ public static Token newToken(int ofKind) {
+ return newToken(ofKind, null);
+ }
}
/* JavaCC - OriginalChecksum=9e470861229c55fdb5d0dd6632a8a0e0 (do not edit this line) */