[526538] HTMLResourceEncodingDetector should always report content declared encoding if it is present
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLHeadTokenizer.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLHeadTokenizer.java
index a84e358..dc79ef8 100644
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLHeadTokenizer.java
+++ b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contenttype/HTMLHeadTokenizer.java
@@ -1,31 +1,31 @@
-/* The following code was generated by JFlex 1.2.2 on 10/10/12 11:09 AM */
+/* The following code was generated by JFlex 1.2.2 on 10/31/17 6:40 PM */
-/*******************************************************************************
- * Copyright (c) 2004, 2012 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*nlsXXX*/
-package org.eclipse.wst.html.core.internal.contenttype;
-import java.io.IOException;
-import java.io.Reader;
-
-import org.eclipse.wst.xml.core.internal.contenttype.EncodingParserConstants;
-import org.eclipse.wst.xml.core.internal.contenttype.XMLHeadTokenizerConstants;
-
-
-
+/*******************************************************************************
+ * Copyright (c) 2004, 2017 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+/*nlsXXX*/
+package org.eclipse.wst.html.core.internal.contenttype;
+import java.io.IOException;
+import java.io.Reader;
+
+import org.eclipse.wst.xml.core.internal.contenttype.EncodingParserConstants;
+import org.eclipse.wst.xml.core.internal.contenttype.XMLHeadTokenizerConstants;
+
+
+
/**
* This class is a scanner generated by
* <a href="http://www.informatik.tu-muenchen.de/~kleing/jflex/">JFlex</a> 1.2.2
- * on 10/10/12 11:09 AM from the specification file
- * <tt>file:/Users/dev/wtp/kepler/webtools.sourceediting/bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.jFlex</tt>
+ * on 10/31/17 6:40 PM from the specification file
+ * <tt>file:/Users/nitin/cve/webtools.sourceediting/bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.jFlex</tt>
*/
public class HTMLHeadTokenizer {
@@ -202,145 +202,146 @@
private boolean yy_eof_done;
/* user code: */
-
-
- private boolean hasMore = true;
- private boolean hasCharsetAttr = false;
- private final static int MAX_TO_SCAN = 8000;
- StringBuffer string = new StringBuffer();
- // state stack for easier state handling
- private IntStack fStateStack = new IntStack();
- private String valueText = null;
- boolean foundContentTypeValue = false;
- private boolean isXHTML;
- private boolean isDocumentRootElementChecked = false;
-
-
- public HTMLHeadTokenizer() {
- super();
- }
-
- public void reset (Reader in) {
- /* the input device */
- yy_reader = in;
-
- /* the current state of the DFA */
- yy_state = 0;
-
- /* the current lexical state */
- yy_lexical_state = YYINITIAL;
-
- /* this buffer contains the current text to be matched and is
- the source of the yytext() string */
- java.util.Arrays.fill(yy_buffer, (char)0);
-
- /* the textposition at the last accepting state */
- yy_markedPos = 0;
-
- /* the textposition at the last state to be included in yytext */
- yy_pushbackPos = 0;
-
- /* the current text position in the buffer */
- yy_currentPos = 0;
-
- /* startRead marks the beginning of the yytext() string in the buffer */
- yy_startRead = 0;
-
- /**
- * endRead marks the last character in the buffer, that has been read
- * from input
- */
- yy_endRead = 0;
-
- /* number of newlines encountered up to the start of the matched text */
- // yyline = 0;
-
- /* the number of characters up to the start of the matched text */
- yychar = 0;
-
- /**
- * the number of characters from the last newline up to the start
- * of the matched text
- */
- // yycolumn = 0;
-
- /**
- * yy_atBOL == true <=> the scanner is currently at the beginning
- * of a line
- */
- yy_atBOL = false;
-
- /* yy_atEOF == true <=> the scanner has returned a value for EOF */
- yy_atEOF = false;
-
- /* denotes if the user-EOF-code has already been executed */
- yy_eof_done = false;
-
-
- fStateStack.clear();
-
- hasMore = true;
- hasCharsetAttr = false;
- isXHTML = false;
- isDocumentRootElementChecked = false;
-
- // its a little wasteful to "throw away" first char array generated
- // by class init (via auto generated code), but we really do want
- // a small buffer for our head parsers.
- if (yy_buffer.length != MAX_TO_SCAN) {
- yy_buffer = new char[MAX_TO_SCAN];
- }
-
-
- }
-
-
- public final HeadParserToken getNextToken() throws IOException {
- String context = null;
- HeadParserToken result = null;
- try {
- context = primGetNextToken();
- }
- catch (IllegalStateException e) {
- hasMore = false;
- result = createToken(HTMLHeadTokenizerConstants.UNDEFINED, yychar, yytext());
- while(yy_advance() != YYEOF) {}
- return result;
- }
- if (valueText != null) {
- result = createToken(context, yychar, valueText);
- valueText = null;
- } else {
- result = createToken(context, yychar, yytext());
- }
- return result;
- }
-
- public final boolean hasMoreTokens() {
- return hasMore && yychar < MAX_TO_SCAN;
- }
- private void pushCurrentState() {
- fStateStack.push(yystate());
-
- }
- public final boolean hasCharsetAttr() {
- return hasCharsetAttr;
- }
-
- private void popState() {
- yybegin(fStateStack.pop());
- }
- private HeadParserToken createToken(String context, int start, String text) {
- return new HeadParserToken(context, start, text);
- }
-
- public boolean isXHTML() {
- return isXHTML;
- }
-
- public boolean isDocumentRootElementChecked(){
- return isDocumentRootElementChecked;
- }
+
+
+ private boolean hasMore = true;
+ private boolean hasCharsetAttr = false;
+ private final static int MAX_TO_SCAN = 8000;
+ StringBuffer string = new StringBuffer();
+ // state stack for easier state handling
+ private IntStack fStateStack = new IntStack();
+ private String valueText = null;
+ boolean foundContentTypeValue = false;
+ private boolean isXHTML;
+ private boolean isDocumentRootElementChecked = false;
+
+
+ public HTMLHeadTokenizer() {
+ super();
+ }
+
+ public void reset (Reader in) {
+ /* the input device */
+ yy_reader = in;
+
+ /* the current state of the DFA */
+ yy_state = 0;
+
+ /* the current lexical state */
+ yy_lexical_state = YYINITIAL;
+
+ /* this buffer contains the current text to be matched and is
+ the source of the yytext() string */
+ java.util.Arrays.fill(yy_buffer, (char)0);
+
+ /* the textposition at the last accepting state */
+ yy_markedPos = 0;
+
+ /* the textposition at the last state to be included in yytext */
+ yy_pushbackPos = 0;
+
+ /* the current text position in the buffer */
+ yy_currentPos = 0;
+
+ /* startRead marks the beginning of the yytext() string in the buffer */
+ yy_startRead = 0;
+
+ /**
+ * endRead marks the last character in the buffer, that has been read
+ * from input
+ */
+ yy_endRead = 0;
+
+ /* number of newlines encountered up to the start of the matched text */
+ // yyline = 0;
+
+ /* the number of characters up to the start of the matched text */
+ yychar = 0;
+
+ /**
+ * the number of characters from the last newline up to the start
+ * of the matched text
+ */
+ // yycolumn = 0;
+
+ /**
+ * yy_atBOL == true <=> the scanner is currently at the beginning
+ * of a line
+ */
+ yy_atBOL = false;
+
+ /* yy_atEOF == true <=> the scanner has returned a value for EOF */
+ yy_atEOF = false;
+
+ /* denotes if the user-EOF-code has already been executed */
+ yy_eof_done = false;
+
+
+ fStateStack.clear();
+
+ hasMore = true;
+ hasCharsetAttr = false;
+ isXHTML = false;
+ isDocumentRootElementChecked = false;
+
+ // its a little wasteful to "throw away" first char array generated
+ // by class init (via auto generated code), but we really do want
+ // a small buffer for our head parsers.
+ if (yy_buffer.length != MAX_TO_SCAN) {
+ yy_buffer = new char[MAX_TO_SCAN];
+ }
+
+
+ }
+
+
+ public final HeadParserToken getNextToken() throws IOException {
+ String context = null;
+ HeadParserToken result = null;
+ try {
+ context = primGetNextToken();
+ }
+ catch (IllegalStateException e) {
+ hasMore = false;
+ result = createToken(HTMLHeadTokenizerConstants.UNDEFINED, yychar, yytext());
+ while(yy_advance() != YYEOF) {}
+ return result;
+ }
+ if (valueText != null) {
+ result = createToken(context, yychar, valueText);
+ valueText = null;
+ } else {
+ result = createToken(context, yychar, yytext());
+ }
+ return result;
+ }
+
+ public final boolean hasMoreTokens() {
+ return hasMore && yychar < MAX_TO_SCAN;
+ }
+ private void pushCurrentState() {
+ fStateStack.push(yystate());
+
+ }
+ public final boolean hasCharsetAttr() {
+ return hasCharsetAttr;
+ }
+
+ private void popState() {
+ yybegin(fStateStack.pop());
+ }
+ private HeadParserToken createToken(String context, int start, String text) {
+ return new HeadParserToken(context, start, text);
+ }
+
+ /* Is this file XHTML, for the purposes of its description (encoding, etc.) */
+ public boolean isXHTML() {
+ return isXHTML;
+ }
+
+ public boolean isDocumentRootElementChecked(){
+ return isDocumentRootElementChecked;
+ }
/**
@@ -432,7 +433,7 @@
return yy_buffer[yy_currentPos++];
}
-
+
/**
* Closes the input stream.
*/
@@ -482,13 +483,13 @@
*/
private void yy_ScanError(int errorCode) {
try {
- IllegalStateException ise = new IllegalStateException("Instance: " + System.identityHashCode(this) + " offset:" + yychar + " state:" + yystate());
- System.out.println(YY_ERROR_MSG[errorCode] + "\n" + ise);
- throw ise;
- }
- catch (ArrayIndexOutOfBoundsException e) {
- System.out.println(YY_ERROR_MSG[YY_UNKNOWN_ERROR]);
- }
+ IllegalStateException ise = new IllegalStateException("Instance: " + System.identityHashCode(this) + " offset:" + yychar + " state:" + yystate());
+ System.out.println(YY_ERROR_MSG[errorCode] + "\n" + ise);
+ throw ise;
+ }
+ catch (ArrayIndexOutOfBoundsException e) {
+ System.out.println(YY_ERROR_MSG[YY_UNKNOWN_ERROR]);
+ }
}
@@ -516,7 +517,7 @@
private void yy_do_eof() {
if (!yy_eof_done) {
yy_eof_done = true;
- hasMore=false;
+ hasMore=false;
}
}
@@ -559,7 +560,7 @@
yy_forAction: {
while (true) {
-
+
yy_input = yy_advance();
if ( yy_input == YYEOF ) break yy_forAction;
@@ -2926,7 +2927,7 @@
case 317: break;
case 179:
case 189:
- { pushCurrentState(); yybegin(QuotedAttributeValue); return XMLHeadTokenizerConstants.XMLDelEncoding; }
+ { pushCurrentState(); yybegin(QuotedAttributeValue); this.isXHTML = true; return XMLHeadTokenizerConstants.XMLDelEncoding; }
case 318: break;
case 174:
case 183:
diff --git a/bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.jFlex b/bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.jFlex
index c9c010d..6fb211e 100644
--- a/bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.jFlex
+++ b/bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.jFlex
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2004, 2012 IBM Corporation and others.
+ * Copyright (c) 2004, 2017 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -153,6 +153,7 @@
return new HeadParserToken(context, start, text);
}
+ /* Is this file XHTML, for the purposes of its description (encoding, etc.) */
public boolean isXHTML() {
return isXHTML;
}
@@ -248,7 +249,7 @@
<ST_XMLDecl>
{
//"version" {BeginAttribeValue} {pushCurrentState(); yybegin(QuotedAttributeValue); return XMLHeadTokenizerConstants.XMLDeclVersion;}
- ({Z}e{Z}n{Z}c{Z}o{Z}d{Z}i{Z}n{Z}g{Z}) {BeginAttributeValueUTF} {pushCurrentState(); yybegin(QuotedAttributeValue); return XMLHeadTokenizerConstants.XMLDelEncoding;}
+ ({Z}e{Z}n{Z}c{Z}o{Z}d{Z}i{Z}n{Z}g{Z}) {BeginAttributeValueUTF} {pushCurrentState(); yybegin(QuotedAttributeValue); this.isXHTML = true; return XMLHeadTokenizerConstants.XMLDelEncoding;}
// note this "forced end" once end of XML Declaration found
({Z}\?{Z}>{Z}) {yybegin(YYINITIAL); return XMLHeadTokenizerConstants.XMLDeclEnd;}
}
diff --git a/bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.java b/bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.java
index 87d6c8f..a50d8a2 100644
--- a/bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.java
+++ b/bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.java
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- * Jens Lukowski/Innoopract - initial renaming/restructuring
- *
- *******************************************************************************/
-/* The following code was generated by JFlex 1.2.2 on 1/27/04 6:41 PM */
+/* The following code was generated by JFlex 1.2.2 on 10/31/17 6:40 PM */
-/*nlsXXX*/
-package org.eclipse.wst.common.encoding.contentspecific.html;
-import java.io.IOException;
-import java.io.Reader;
-
-import org.eclipse.wst.common.encoding.contentspecific.EncodingParserConstants;
-import org.eclipse.wst.common.encoding.contentspecific.HeadParserToken;
-import org.eclipse.wst.common.encoding.contentspecific.IntStack;
-import org.eclipse.wst.common.encoding.contentspecific.xml.XMLHeadTokenizerConstants;
-
-
-
+/*******************************************************************************
+ * Copyright (c) 2004, 2017 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+/*nlsXXX*/
+package org.eclipse.wst.html.core.internal.contenttype;
+import java.io.IOException;
+import java.io.Reader;
+
+import org.eclipse.wst.xml.core.internal.contenttype.EncodingParserConstants;
+import org.eclipse.wst.xml.core.internal.contenttype.XMLHeadTokenizerConstants;
+
+
+
/**
* This class is a scanner generated by
* <a href="http://www.informatik.tu-muenchen.de/~kleing/jflex/">JFlex</a> 1.2.2
- * on 1/27/04 6:41 PM from the specification file
- * <tt>file:/D:/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.jflex</tt>
+ * on 10/31/17 6:40 PM from the specification file
+ * <tt>file:/Users/nitin/cve/webtools.sourceediting/bundles/org.eclipse.wst.sse.core/DevTimeSupport/HeadParsers/HTMLHeadTokenizer/HTMLHeadTokenizer.jFlex</tt>
*/
public class HTMLHeadTokenizer {
@@ -37,13 +33,15 @@
final public static int YYEOF = -1;
/** lexical states */
- final public static int ST_META_TAG = 4;
- final public static int YYINITIAL = 0;
- final public static int UnDelimitedString = 12;
- final public static int DQ_STRING = 8;
- final public static int SQ_STRING = 10;
+ final public static int UnDelimitedString = 14;
final public static int ST_XMLDecl = 2;
- final public static int QuotedAttributeValue = 6;
+ final public static int SQ_STRING = 12;
+ final public static int UnDelimitedCharset = 16;
+ final public static int ST_XMLNameSpace = 6;
+ final public static int ST_META_TAG = 4;
+ final public static int DQ_STRING = 10;
+ final public static int YYINITIAL = 0;
+ final public static int QuotedAttributeValue = 8;
/**
* YY_LEXSTATE[l] is the state in the DFA for the lexical state l
@@ -52,22 +50,84 @@
* l is of the form l = 2*k, k a non negative integer
*/
private final static int YY_LEXSTATE[] = {
- 0, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7
+ 0, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8,
+ 9, 9
};
/**
* Translates characters to character classes
*/
final private static String yycmap_packed =
- "\11\0\1\6\1\7\2\0\1\11\22\0\1\22\1\0\1\40\2\0"+
- "\1\44\1\0\1\43\5\0\1\34\1\0\1\42\13\0\1\45\1\12"+
- "\1\10\1\31\1\13\1\0\1\21\1\0\1\24\1\26\1\17\1\0"+
- "\1\30\1\32\1\27\2\0\1\16\1\15\1\23\1\25\1\33\1\35"+
- "\2\0\1\20\1\36\1\37\1\0\1\14\1\41\7\0\1\21\1\0"+
- "\1\24\1\26\1\17\1\0\1\30\1\32\1\27\2\0\1\16\1\15"+
- "\1\23\1\25\1\33\1\35\2\0\1\20\1\36\1\37\1\0\1\14"+
- "\1\41\101\0\1\4\3\0\1\5\17\0\1\3\16\0\1\1\20\0"+
- "\1\3\16\0\1\1\1\2\170\0\1\2\ufe87\0";
+ "\1\16\10\0\1\6\1\7\2\0\1\15\22\0\1\6\1\0\1\32"+
+ "\2\0\1\56\1\0\1\33\5\0\1\13\1\12\1\36\1\11\1\44"+
+ "\1\11\1\40\5\11\1\45\1\14\1\57\1\20\1\17\1\46\1\21"+
+ "\1\0\1\27\1\10\1\47\1\50\1\25\1\10\1\43\1\34\1\51"+
+ "\2\10\1\24\1\23\1\30\1\41\1\35\1\52\1\42\1\31\1\26"+
+ "\1\53\1\54\1\37\1\22\1\55\1\10\4\0\1\10\1\0\1\27"+
+ "\1\10\1\47\1\50\1\25\1\10\1\43\1\34\1\51\2\10\1\24"+
+ "\1\23\1\30\1\41\1\35\1\52\1\42\1\31\1\26\1\53\1\54"+
+ "\1\37\1\22\1\55\1\10\74\0\1\11\3\0\1\4\3\0\1\5"+
+ "\17\10\1\3\7\10\1\0\6\10\1\1\20\10\1\3\7\10\1\0"+
+ "\6\10\1\1\1\2\62\10\2\0\13\10\2\0\10\10\1\0\56\10"+
+ "\1\2\6\10\1\0\104\10\11\0\44\10\3\0\2\10\4\0\36\10"+
+ "\70\0\131\10\22\0\7\10\16\0\2\11\56\0\106\11\32\0\2\11"+
+ "\44\0\1\10\1\11\3\10\1\0\1\10\1\0\24\10\1\0\54\10"+
+ "\1\0\7\10\3\0\1\10\1\0\1\10\1\0\1\10\1\0\1\10"+
+ "\1\0\22\10\15\0\14\10\1\0\102\10\1\0\14\10\1\0\44\10"+
+ "\1\0\4\11\11\0\65\10\2\0\2\10\2\0\2\10\3\0\34\10"+
+ "\2\0\10\10\2\0\2\10\67\0\46\10\2\0\1\10\7\0\46\10"+
+ "\12\0\21\11\1\0\27\11\1\0\3\11\1\0\1\11\1\0\2\11"+
+ "\1\0\1\11\13\0\33\10\5\0\3\10\56\0\32\10\5\0\1\11"+
+ "\12\10\10\11\15\0\12\11\6\0\1\11\107\10\2\0\5\10\1\0"+
+ "\17\10\1\0\4\10\1\0\1\10\17\11\2\10\2\11\1\0\4\11"+
+ "\2\0\12\11\u0207\0\3\11\1\0\65\10\2\0\1\11\1\10\20\11"+
+ "\3\0\4\11\3\0\12\10\2\11\2\0\12\11\21\0\3\11\1\0"+
+ "\10\10\2\0\2\10\2\0\26\10\1\0\7\10\1\0\1\10\3\0"+
+ "\4\10\2\0\1\11\1\0\7\11\2\0\2\11\2\0\3\11\11\0"+
+ "\1\11\4\0\2\10\1\0\3\10\2\11\2\0\12\11\2\10\20\0"+
+ "\1\11\2\0\6\10\4\0\2\10\2\0\26\10\1\0\7\10\1\0"+
+ "\2\10\1\0\2\10\1\0\2\10\2\0\1\11\1\0\5\11\4\0"+
+ "\2\11\2\0\3\11\13\0\4\10\1\0\1\10\7\0\12\11\2\11"+
+ "\3\10\14\0\3\11\1\0\7\10\1\0\1\10\1\0\3\10\1\0"+
+ "\26\10\1\0\7\10\1\0\2\10\1\0\5\10\2\0\1\11\1\10"+
+ "\10\11\1\0\3\11\1\0\3\11\22\0\1\10\5\0\12\11\21\0"+
+ "\3\11\1\0\10\10\2\0\2\10\2\0\26\10\1\0\7\10\1\0"+
+ "\2\10\2\0\4\10\2\0\1\11\1\10\6\11\3\0\2\11\2\0"+
+ "\3\11\10\0\2\11\4\0\2\10\1\0\3\10\4\0\12\11\22\0"+
+ "\2\11\1\0\6\10\3\0\3\10\1\0\4\10\3\0\2\10\1\0"+
+ "\1\10\1\0\2\10\3\0\2\10\3\0\3\10\3\0\10\10\1\0"+
+ "\3\10\4\0\5\11\3\0\3\11\1\0\4\11\11\0\1\11\17\0"+
+ "\11\11\21\0\3\11\1\0\10\10\1\0\3\10\1\0\27\10\1\0"+
+ "\12\10\1\0\5\10\4\0\7\11\1\0\3\11\1\0\4\11\7\0"+
+ "\2\11\11\0\2\10\4\0\12\11\22\0\2\11\1\0\10\10\1\0"+
+ "\3\10\1\0\27\10\1\0\12\10\1\0\5\10\4\0\7\11\1\0"+
+ "\3\11\1\0\4\11\7\0\2\11\7\0\1\10\1\0\2\10\4\0"+
+ "\12\11\22\0\2\11\1\0\10\10\1\0\3\10\1\0\27\10\1\0"+
+ "\20\10\4\0\6\11\2\0\3\11\1\0\4\11\11\0\1\11\10\0"+
+ "\2\10\4\0\12\11\221\0\56\10\1\0\1\10\1\11\2\10\7\11"+
+ "\5\0\6\10\1\11\10\11\1\0\12\11\47\0\2\10\1\0\1\10"+
+ "\2\0\2\10\1\0\1\10\2\0\1\10\6\0\4\10\1\0\7\10"+
+ "\1\0\3\10\1\0\1\10\1\0\1\10\2\0\2\10\1\0\2\10"+
+ "\1\0\1\10\1\11\2\10\6\11\1\0\2\11\1\10\2\0\5\10"+
+ "\1\0\1\11\1\0\6\11\2\0\12\11\76\0\2\11\6\0\12\11"+
+ "\13\0\1\11\1\0\1\11\1\0\1\11\4\0\2\11\10\10\1\0"+
+ "\41\10\7\0\24\11\1\0\6\11\4\0\6\11\1\0\1\11\1\0"+
+ "\25\11\3\0\7\11\1\0\1\11\346\0\46\10\12\0\47\10\11\0"+
+ "\1\10\1\0\2\10\1\0\3\10\1\0\1\10\1\0\2\10\1\0"+
+ "\5\10\51\0\1\10\1\0\1\10\1\0\1\10\13\0\1\10\1\0"+
+ "\1\10\1\0\1\10\3\0\2\10\3\0\1\10\5\0\3\10\1\0"+
+ "\1\10\1\0\1\10\1\0\1\10\1\0\1\10\3\0\2\10\3\0"+
+ "\2\10\1\0\1\10\50\0\1\10\11\0\1\10\2\0\1\10\2\0"+
+ "\2\10\7\0\2\10\1\0\1\10\1\0\7\10\50\0\1\10\4\0"+
+ "\1\10\10\0\1\10\u0c06\0\234\10\4\0\132\10\6\0\26\10\2\0"+
+ "\6\10\2\0\46\10\2\0\6\10\2\0\10\10\1\0\1\10\1\0"+
+ "\1\10\1\0\1\10\1\0\37\10\2\0\65\10\1\0\7\10\1\0"+
+ "\1\10\3\0\3\10\1\0\7\10\3\0\4\10\2\0\6\10\4\0"+
+ "\15\10\5\0\3\10\1\0\7\10\323\0\15\11\4\0\1\11\104\0"+
+ "\1\10\3\0\2\10\2\0\1\10\121\0\3\10\u0e82\0\1\11\1\0"+
+ "\1\10\31\0\11\10\6\11\1\0\5\11\13\0\124\10\4\0\2\11"+
+ "\2\0\2\11\2\0\132\10\1\0\3\11\6\0\50\10\u1cd3\0\u51a6\10"+
+ "\u0c5a\0\u2ba4\10\u285c\0";
/**
* Translates characters to character classes
@@ -142,123 +202,146 @@
private boolean yy_eof_done;
/* user code: */
-
-
- private boolean hasMore = true;
- private final static int MAX_TO_SCAN = 8000;
- StringBuffer string = new StringBuffer();
- // state stack for easier state handling
- private IntStack fStateStack = new IntStack();
- private String valueText = null;
- boolean foundContentTypeValue = false;
-
-
-
- public HTMLHeadTokenizer() {
- super();
- }
-
- public void reset (Reader in) {
- /* the input device */
- yy_reader = in;
-
- /* the current state of the DFA */
- yy_state = 0;
-
- /* the current lexical state */
- yy_lexical_state = YYINITIAL;
-
- /* this buffer contains the current text to be matched and is
- the source of the yytext() string */
- java.util.Arrays.fill(yy_buffer, (char)0);
-
- /* the textposition at the last accepting state */
- yy_markedPos = 0;
-
- /* the textposition at the last state to be included in yytext */
- yy_pushbackPos = 0;
-
- /* the current text position in the buffer */
- yy_currentPos = 0;
-
- /* startRead marks the beginning of the yytext() string in the buffer */
- yy_startRead = 0;
-
- /**
- * endRead marks the last character in the buffer, that has been read
- * from input
- */
- yy_endRead = 0;
-
- /* number of newlines encountered up to the start of the matched text */
- yyline = 0;
-
- /* the number of characters up to the start of the matched text */
- yychar = 0;
-
- /**
- * the number of characters from the last newline up to the start
- * of the matched text
- */
- yycolumn = 0;
-
- /**
- * yy_atBOL == true <=> the scanner is currently at the beginning
- * of a line
- */
- yy_atBOL = false;
-
- /* yy_atEOF == true <=> the scanner has returned a value for EOF */
- yy_atEOF = false;
-
- /* denotes if the user-EOF-code has already been executed */
- yy_eof_done = false;
-
-
- fStateStack.clear();
-
- hasMore = true;
-
- // its a little wasteful to "throw away" first char array generated
- // by class init (via auto generated code), but we really do want
- // a small buffer for our head parsers.
- if (yy_buffer.length != MAX_TO_SCAN) {
- yy_buffer = new char[MAX_TO_SCAN];
- }
-
-
- }
-
-
- public final HeadParserToken getNextToken() throws IOException {
- String context = null;
- context = primGetNextToken();
- HeadParserToken result = null;
- if (valueText != null) {
- result = createToken(context, yychar, valueText);
- valueText = null;
- } else {
- result = createToken(context, yychar, yytext());
- }
- return result;
- }
-
- public final boolean hasMoreTokens() {
- return hasMore && yychar < MAX_TO_SCAN;
- }
- private void pushCurrentState() {
- fStateStack.push(yystate());
-
- }
-
- private void popState() {
- yybegin(fStateStack.pop());
- }
- private HeadParserToken createToken(String context, int start, String text) {
- return new HeadParserToken(context, start, text);
- }
-
-
+
+
+ private boolean hasMore = true;
+ private boolean hasCharsetAttr = false;
+ private final static int MAX_TO_SCAN = 8000;
+ StringBuffer string = new StringBuffer();
+ // state stack for easier state handling
+ private IntStack fStateStack = new IntStack();
+ private String valueText = null;
+ boolean foundContentTypeValue = false;
+ private boolean isXHTML;
+ private boolean isDocumentRootElementChecked = false;
+
+
+ public HTMLHeadTokenizer() {
+ super();
+ }
+
+ public void reset (Reader in) {
+ /* the input device */
+ yy_reader = in;
+
+ /* the current state of the DFA */
+ yy_state = 0;
+
+ /* the current lexical state */
+ yy_lexical_state = YYINITIAL;
+
+ /* this buffer contains the current text to be matched and is
+ the source of the yytext() string */
+ java.util.Arrays.fill(yy_buffer, (char)0);
+
+ /* the textposition at the last accepting state */
+ yy_markedPos = 0;
+
+ /* the textposition at the last state to be included in yytext */
+ yy_pushbackPos = 0;
+
+ /* the current text position in the buffer */
+ yy_currentPos = 0;
+
+ /* startRead marks the beginning of the yytext() string in the buffer */
+ yy_startRead = 0;
+
+ /**
+ * endRead marks the last character in the buffer, that has been read
+ * from input
+ */
+ yy_endRead = 0;
+
+ /* number of newlines encountered up to the start of the matched text */
+ // yyline = 0;
+
+ /* the number of characters up to the start of the matched text */
+ yychar = 0;
+
+ /**
+ * the number of characters from the last newline up to the start
+ * of the matched text
+ */
+ // yycolumn = 0;
+
+ /**
+ * yy_atBOL == true <=> the scanner is currently at the beginning
+ * of a line
+ */
+ yy_atBOL = false;
+
+ /* yy_atEOF == true <=> the scanner has returned a value for EOF */
+ yy_atEOF = false;
+
+ /* denotes if the user-EOF-code has already been executed */
+ yy_eof_done = false;
+
+
+ fStateStack.clear();
+
+ hasMore = true;
+ hasCharsetAttr = false;
+ isXHTML = false;
+ isDocumentRootElementChecked = false;
+
+ // its a little wasteful to "throw away" first char array generated
+ // by class init (via auto generated code), but we really do want
+ // a small buffer for our head parsers.
+ if (yy_buffer.length != MAX_TO_SCAN) {
+ yy_buffer = new char[MAX_TO_SCAN];
+ }
+
+
+ }
+
+
+ public final HeadParserToken getNextToken() throws IOException {
+ String context = null;
+ HeadParserToken result = null;
+ try {
+ context = primGetNextToken();
+ }
+ catch (IllegalStateException e) {
+ hasMore = false;
+ result = createToken(HTMLHeadTokenizerConstants.UNDEFINED, yychar, yytext());
+ while(yy_advance() != YYEOF) {}
+ return result;
+ }
+ if (valueText != null) {
+ result = createToken(context, yychar, valueText);
+ valueText = null;
+ } else {
+ result = createToken(context, yychar, yytext());
+ }
+ return result;
+ }
+
+ public final boolean hasMoreTokens() {
+ return hasMore && yychar < MAX_TO_SCAN;
+ }
+ private void pushCurrentState() {
+ fStateStack.push(yystate());
+
+ }
+ public final boolean hasCharsetAttr() {
+ return hasCharsetAttr;
+ }
+
+ private void popState() {
+ yybegin(fStateStack.pop());
+ }
+ private HeadParserToken createToken(String context, int start, String text) {
+ return new HeadParserToken(context, start, text);
+ }
+
+ /* Is this file XHTML, for the purposes of its description (encoding, etc.) */
+ public boolean isXHTML() {
+ return isXHTML;
+ }
+
+ public boolean isDocumentRootElementChecked(){
+ return isDocumentRootElementChecked;
+ }
/**
@@ -291,7 +374,7 @@
char [] map = new char[0x10000];
int i = 0; /* index in packed string */
int j = 0; /* index in unpacked array */
- while (i < 174) {
+ while (i < 1386) {
int count = packed.charAt(i++);
char value = packed.charAt(i++);
do map[j++] = value; while (--count > 0);
@@ -433,7 +516,7 @@
private void yy_do_eof() {
if (!yy_eof_done) {
yy_eof_done = true;
- hasMore=false;
+ hasMore=false;
}
}
@@ -450,6 +533,8 @@
int yy_input;
int yy_action;
+ yy_pushbackPos = -1;
+ boolean yy_was_pushback;
while (true) {
@@ -470,6 +555,7 @@
else
yy_state = YY_LEXSTATE[yy_lexical_state];
+ yy_was_pushback = false;
yy_forAction: {
while (true) {
@@ -480,308 +566,529 @@
yy_input = yycmap[yy_input];
+ boolean yy_pushback = false;
boolean yy_isFinal = false;
boolean yy_noLookAhead = false;
yy_forNext: { switch (yy_state) {
case 0:
switch (yy_input) {
- case 1: yy_isFinal = true; yy_state = 9; break yy_forNext;
- case 2: yy_isFinal = true; yy_state = 10; break yy_forNext;
- case 3: yy_isFinal = true; yy_state = 11; break yy_forNext;
- case 10: yy_isFinal = true; yy_state = 12; break yy_forNext;
- default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 8; break yy_forNext;
+ case 1: yy_isFinal = true; yy_state = 11; break yy_forNext;
+ case 2: yy_isFinal = true; yy_state = 12; break yy_forNext;
+ case 3: yy_isFinal = true; yy_state = 13; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 14; break yy_forNext;
+ case 16: yy_isFinal = true; yy_state = 15; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 10; break yy_forNext;
}
case 1:
switch (yy_input) {
- case 1: yy_isFinal = true; yy_state = 9; break yy_forNext;
- case 2: yy_isFinal = true; yy_state = 10; break yy_forNext;
- case 3: yy_isFinal = true; yy_state = 11; break yy_forNext;
+ case 1: yy_isFinal = true; yy_state = 11; break yy_forNext;
+ case 2: yy_isFinal = true; yy_state = 12; break yy_forNext;
+ case 3: yy_isFinal = true; yy_state = 13; break yy_forNext;
case 6:
case 7:
- case 9:
- case 18: yy_isFinal = true; yy_state = 13; break yy_forNext;
- case 10: yy_isFinal = true; yy_state = 14; break yy_forNext;
- default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 8; break yy_forNext;
+ case 13: yy_isFinal = true; yy_state = 16; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 17; break yy_forNext;
+ case 16: yy_isFinal = true; yy_state = 18; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 10; break yy_forNext;
}
case 2:
switch (yy_input) {
- case 11: yy_isFinal = true; yy_state = 15; break yy_forNext;
- case 15: yy_isFinal = true; yy_state = 16; break yy_forNext;
- default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 8; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 19; break yy_forNext;
+ case 17: yy_isFinal = true; yy_state = 20; break yy_forNext;
+ case 21: yy_isFinal = true; yy_state = 21; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 10; break yy_forNext;
}
case 3:
switch (yy_input) {
- case 25: yy_isFinal = true; yy_noLookAhead = true; yy_state = 17; break yy_forNext;
- case 26: yy_isFinal = true; yy_state = 18; break yy_forNext;
- case 34: yy_isFinal = true; yy_state = 19; break yy_forNext;
- default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 8; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 22; break yy_forNext;
+ case 28: yy_isFinal = true; yy_state = 23; break yy_forNext;
+ case 30: yy_isFinal = true; yy_state = 24; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 25; break yy_forNext;
+ case 39: yy_isFinal = true; yy_state = 26; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 10; break yy_forNext;
}
case 4:
switch (yy_input) {
case 6:
- case 9:
- case 18: yy_isFinal = true; yy_state = 21; break yy_forNext;
- case 7: yy_isFinal = true; yy_state = 22; break yy_forNext;
- case 32: yy_isFinal = true; yy_noLookAhead = true; yy_state = 23; break yy_forNext;
- case 35: yy_isFinal = true; yy_noLookAhead = true; yy_state = 24; break yy_forNext;
- default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 20; break yy_forNext;
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 27; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 28; break yy_forNext;
+ case 30: yy_isFinal = true; yy_state = 29; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 30; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 10; break yy_forNext;
}
case 5:
switch (yy_input) {
- case 7:
- case 9:
- case 10:
- case 25: yy_isFinal = true; yy_noLookAhead = true; yy_state = 26; break yy_forNext;
- case 11:
- case 34: yy_isFinal = true; yy_state = 27; break yy_forNext;
- case 32: yy_isFinal = true; yy_noLookAhead = true; yy_state = 28; break yy_forNext;
- default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 25; break yy_forNext;
+ case 6:
+ case 13: yy_isFinal = true; yy_state = 32; break yy_forNext;
+ case 7: yy_isFinal = true; yy_state = 33; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 34; break yy_forNext;
+ case 26: yy_isFinal = true; yy_state = 35; break yy_forNext;
+ case 27: yy_isFinal = true; yy_state = 36; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 31; break yy_forNext;
}
case 6:
switch (yy_input) {
case 7:
- case 9:
- case 10:
- case 25: yy_isFinal = true; yy_noLookAhead = true; yy_state = 26; break yy_forNext;
- case 34: yy_isFinal = true; yy_state = 27; break yy_forNext;
- case 35: yy_isFinal = true; yy_noLookAhead = true; yy_state = 28; break yy_forNext;
- case 36: yy_isFinal = true; yy_state = 29; break yy_forNext;
- default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 25; break yy_forNext;
+ case 13:
+ case 16:
+ case 38: yy_isFinal = true; yy_state = 38; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 39; break yy_forNext;
+ case 17:
+ case 30: yy_isFinal = true; yy_state = 40; break yy_forNext;
+ case 26: yy_isFinal = true; yy_state = 41; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 37; break yy_forNext;
}
case 7:
switch (yy_input) {
- case 10:
- case 25: yy_isFinal = true; yy_noLookAhead = true; yy_state = 26; break yy_forNext;
- case 34: yy_isFinal = true; yy_state = 27; break yy_forNext;
- case 11: yy_isFinal = true; yy_state = 29; break yy_forNext;
+ case 7:
+ case 13:
+ case 16:
+ case 38: yy_isFinal = true; yy_state = 38; break yy_forNext;
+ case 30: yy_isFinal = true; yy_state = 40; break yy_forNext;
+ case 27: yy_isFinal = true; yy_state = 41; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 42; break yy_forNext;
+ case 46: yy_isFinal = true; yy_state = 43; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 37; break yy_forNext;
+ }
+
+ case 8:
+ switch (yy_input) {
+ case 16:
+ case 38: yy_isFinal = true; yy_state = 38; break yy_forNext;
+ case 30: yy_isFinal = true; yy_state = 40; break yy_forNext;
+ case 17: yy_isFinal = true; yy_state = 43; break yy_forNext;
case 6:
case 7:
- case 9:
- case 18: yy_isFinal = true; yy_noLookAhead = true; yy_state = 30; break yy_forNext;
- case 32:
- case 35: yy_isFinal = true; yy_noLookAhead = true; yy_state = 31; break yy_forNext;
- case 37: yy_isFinal = true; yy_state = 32; break yy_forNext;
- default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 25; break yy_forNext;
+ case 13: yy_isFinal = true; yy_state = 44; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 45; break yy_forNext;
+ case 26:
+ case 27: yy_isFinal = true; yy_state = 46; break yy_forNext;
+ case 47: yy_isFinal = true; yy_pushbackPos = yy_currentPos; yy_pushback = true; yy_state = 47; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 37; break yy_forNext;
}
case 9:
switch (yy_input) {
- case 2: yy_isFinal = true; yy_noLookAhead = true; yy_state = 33; break yy_forNext;
- default: break yy_forAction;
- }
-
- case 10:
- switch (yy_input) {
- case 1: yy_isFinal = true; yy_noLookAhead = true; yy_state = 34; break yy_forNext;
- default: break yy_forAction;
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 10; break yy_forNext;
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_noLookAhead = true; yy_state = 37; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 48; break yy_forNext;
}
case 11:
switch (yy_input) {
- case 4: yy_state = 35; break yy_forNext;
+ case 2: yy_isFinal = true; yy_noLookAhead = true; yy_state = 49; break yy_forNext;
default: break yy_forAction;
}
case 12:
switch (yy_input) {
- case 13: yy_state = 36; break yy_forNext;
+ case 1: yy_isFinal = true; yy_noLookAhead = true; yy_state = 50; break yy_forNext;
default: break yy_forAction;
}
case 13:
switch (yy_input) {
- case 6:
- case 7:
- case 9:
- case 18: yy_state = 37; break yy_forNext;
- case 10: yy_state = 38; break yy_forNext;
+ case 4: yy_state = 51; break yy_forNext;
default: break yy_forAction;
}
case 14:
switch (yy_input) {
- case 13: yy_state = 36; break yy_forNext;
- case 11: yy_state = 39; break yy_forNext;
+ case 16: yy_state = 52; break yy_forNext;
default: break yy_forAction;
}
case 15:
switch (yy_input) {
- case 25: yy_isFinal = true; yy_noLookAhead = true; yy_state = 40; break yy_forNext;
- default: break yy_forAction;
+ case 14: yy_state = 54; break yy_forNext;
+ case 19: yy_isFinal = true; yy_state = 55; break yy_forNext;
+ case 0:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 9:
+ case 10:
+ case 11:
+ case 13:
+ case 15:
+ case 16:
+ case 17:
+ case 26:
+ case 27:
+ case 30:
+ case 32:
+ case 36:
+ case 37:
+ case 38:
+ case 46:
+ case 47: break yy_forAction;
+ default: yy_isFinal = true; yy_state = 53; break yy_forNext;
}
case 16:
switch (yy_input) {
- case 19: yy_state = 41; break yy_forNext;
+ case 6:
+ case 7:
+ case 13: yy_state = 56; break yy_forNext;
+ case 14: yy_state = 57; break yy_forNext;
+ case 16: yy_state = 58; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 17:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 56; break yy_forNext;
+ case 16: yy_state = 59; break yy_forNext;
default: break yy_forAction;
}
case 18:
switch (yy_input) {
- case 16: yy_state = 42; break yy_forNext;
- default: break yy_forAction;
+ case 19: yy_isFinal = true; yy_state = 55; break yy_forNext;
+ case 14: yy_state = 60; break yy_forNext;
+ case 17: yy_state = 61; break yy_forNext;
+ case 0:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 9:
+ case 10:
+ case 11:
+ case 13:
+ case 15:
+ case 16:
+ case 26:
+ case 27:
+ case 30:
+ case 32:
+ case 36:
+ case 37:
+ case 38:
+ case 46:
+ case 47: break yy_forAction;
+ default: yy_isFinal = true; yy_state = 53; break yy_forNext;
}
case 19:
switch (yy_input) {
- case 25: yy_isFinal = true; yy_noLookAhead = true; yy_state = 43; break yy_forNext;
+ case 17: yy_state = 62; break yy_forNext;
+ case 21: yy_state = 63; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 20:
+ switch (yy_input) {
+ case 14: yy_state = 64; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 65; break yy_forNext;
default: break yy_forAction;
}
case 21:
switch (yy_input) {
- case 6:
- case 9:
- case 18: yy_isFinal = true; yy_state = 21; break yy_forNext;
- case 7: yy_state = 44; break yy_forNext;
- default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 20; break yy_forNext;
+ case 14: yy_state = 66; break yy_forNext;
+ case 24: yy_state = 67; break yy_forNext;
+ default: break yy_forAction;
}
case 22:
switch (yy_input) {
- case 6:
- case 9:
- case 18: yy_isFinal = true; yy_state = 21; break yy_forNext;
- case 7: yy_state = 44; break yy_forNext;
- default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 20; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 25; break yy_forNext;
+ case 28: yy_state = 68; break yy_forNext;
+ case 30: yy_state = 69; break yy_forNext;
+ case 39: yy_state = 70; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 23:
+ switch (yy_input) {
+ case 14: yy_state = 71; break yy_forNext;
+ case 22: yy_state = 72; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 24:
+ switch (yy_input) {
+ case 14: yy_state = 73; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 74; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 25:
+ switch (yy_input) {
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 75; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 26:
+ switch (yy_input) {
+ case 14: yy_state = 76; break yy_forNext;
+ case 28: yy_state = 77; break yy_forNext;
+ default: break yy_forAction;
}
case 27:
switch (yy_input) {
- case 25: yy_isFinal = true; yy_noLookAhead = true; yy_state = 45; break yy_forNext;
+ case 6:
+ case 7:
+ case 13: yy_state = 78; break yy_forNext;
+ case 14: yy_state = 79; break yy_forNext;
+ case 18: yy_state = 80; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 28:
+ switch (yy_input) {
+ case 38: yy_isFinal = true; yy_state = 30; break yy_forNext;
+ case 6:
+ case 7:
+ case 13: yy_state = 78; break yy_forNext;
+ case 30: yy_state = 81; break yy_forNext;
default: break yy_forAction;
}
case 29:
switch (yy_input) {
- case 25: yy_isFinal = true; yy_noLookAhead = true; yy_state = 46; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 30; break yy_forNext;
+ case 14: yy_state = 82; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 30:
+ switch (yy_input) {
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 83; break yy_forNext;
default: break yy_forAction;
}
case 32:
switch (yy_input) {
case 6:
+ case 13: yy_isFinal = true; yy_state = 32; break yy_forNext;
+ case 7: yy_state = 84; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 85; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 31; break yy_forNext;
+ }
+
+ case 33:
+ switch (yy_input) {
+ case 6:
+ case 13: yy_isFinal = true; yy_state = 32; break yy_forNext;
+ case 7: yy_state = 84; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 85; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 31; break yy_forNext;
+ }
+
+ case 34:
+ switch (yy_input) {
+ case 26: yy_isFinal = true; yy_state = 35; break yy_forNext;
+ case 27: yy_isFinal = true; yy_state = 36; break yy_forNext;
+ case 6:
case 7:
- case 9:
- case 18: yy_isFinal = true; yy_state = 32; break yy_forNext;
+ case 13: yy_state = 84; break yy_forNext;
default: break yy_forAction;
}
case 35:
switch (yy_input) {
- case 5: yy_isFinal = true; yy_noLookAhead = true; yy_state = 47; break yy_forNext;
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 86; break yy_forNext;
default: break yy_forAction;
}
case 36:
switch (yy_input) {
- case 15: yy_state = 48; break yy_forNext;
- default: break yy_forAction;
- }
-
- case 37:
- switch (yy_input) {
- case 6:
- case 7:
- case 9:
- case 18: yy_state = 37; break yy_forNext;
- case 10: yy_state = 38; break yy_forNext;
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 87; break yy_forNext;
default: break yy_forAction;
}
case 38:
switch (yy_input) {
- case 11: yy_state = 39; break yy_forNext;
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 88; break yy_forNext;
default: break yy_forAction;
}
case 39:
switch (yy_input) {
- case 12: yy_state = 49; break yy_forNext;
+ case 7:
+ case 13:
+ case 16:
+ case 38: yy_isFinal = true; yy_state = 38; break yy_forNext;
+ case 26: yy_isFinal = true; yy_state = 41; break yy_forNext;
+ case 17:
+ case 30: yy_state = 89; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 40:
+ switch (yy_input) {
+ case 14: yy_state = 90; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 91; break yy_forNext;
default: break yy_forAction;
}
case 41:
switch (yy_input) {
- case 20: yy_state = 50; break yy_forNext;
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 92; break yy_forNext;
default: break yy_forAction;
}
case 42:
switch (yy_input) {
- case 16: yy_state = 51; break yy_forNext;
+ case 7:
+ case 13:
+ case 16:
+ case 38: yy_isFinal = true; yy_state = 38; break yy_forNext;
+ case 27: yy_isFinal = true; yy_state = 41; break yy_forNext;
+ case 30: yy_state = 89; break yy_forNext;
+ case 46: yy_state = 93; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 43:
+ switch (yy_input) {
+ case 38: yy_isFinal = true; yy_state = 38; break yy_forNext;
+ case 14: yy_state = 94; break yy_forNext;
default: break yy_forAction;
}
case 44:
switch (yy_input) {
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 95; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 45:
+ switch (yy_input) {
+ case 16:
+ case 38: yy_isFinal = true; yy_state = 38; break yy_forNext;
case 6:
- case 9:
- case 18: yy_isFinal = true; yy_state = 21; break yy_forNext;
- case 7: yy_state = 44; break yy_forNext;
- default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 20; break yy_forNext;
- }
-
- case 48:
- switch (yy_input) {
- case 16: yy_state = 52; break yy_forNext;
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 44; break yy_forNext;
+ case 26:
+ case 27: yy_isFinal = true; yy_state = 46; break yy_forNext;
+ case 30: yy_state = 89; break yy_forNext;
+ case 17: yy_state = 93; break yy_forNext;
default: break yy_forAction;
}
- case 49:
+ case 46:
switch (yy_input) {
- case 13: yy_state = 53; break yy_forNext;
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 96; break yy_forNext;
default: break yy_forAction;
}
- case 50:
+ case 47:
switch (yy_input) {
- case 21: yy_state = 54; break yy_forNext;
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_pushback = true; yy_state = 97; break yy_forNext;
+ case 14: yy_state = 98; break yy_forNext;
default: break yy_forAction;
}
case 51:
switch (yy_input) {
- case 27: yy_state = 55; break yy_forNext;
+ case 5: yy_isFinal = true; yy_noLookAhead = true; yy_state = 99; break yy_forNext;
default: break yy_forAction;
}
case 52:
switch (yy_input) {
- case 17: yy_state = 56; break yy_forNext;
- default: break yy_forAction;
+ case 14: yy_state = 54; break yy_forNext;
+ case 19: yy_isFinal = true; yy_state = 55; break yy_forNext;
+ case 0:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 9:
+ case 10:
+ case 11:
+ case 13:
+ case 15:
+ case 16:
+ case 17:
+ case 26:
+ case 27:
+ case 30:
+ case 32:
+ case 36:
+ case 37:
+ case 38:
+ case 46:
+ case 47: break yy_forAction;
+ default: yy_isFinal = true; yy_state = 53; break yy_forNext;
}
case 53:
switch (yy_input) {
- case 14: yy_state = 57; break yy_forNext;
- default: break yy_forAction;
+ case 0:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 13:
+ case 14:
+ case 15:
+ case 16:
+ case 17:
+ case 26:
+ case 27:
+ case 30:
+ case 38:
+ case 46:
+ case 47: break yy_forAction;
+ default: yy_isFinal = true; yy_state = 53; break yy_forNext;
}
case 54:
switch (yy_input) {
- case 22: yy_state = 58; break yy_forNext;
+ case 19: yy_state = 100; break yy_forNext;
default: break yy_forAction;
}
case 55:
switch (yy_input) {
- case 28: yy_state = 59; break yy_forNext;
- default: break yy_forAction;
+ case 14: yy_state = 101; break yy_forNext;
+ case 21: yy_isFinal = true; yy_state = 102; break yy_forNext;
+ case 0:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 13:
+ case 15:
+ case 16:
+ case 17:
+ case 26:
+ case 27:
+ case 30:
+ case 38:
+ case 46:
+ case 47: break yy_forAction;
+ default: yy_isFinal = true; yy_state = 53; break yy_forNext;
}
case 56:
switch (yy_input) {
- case 18: yy_isFinal = true; yy_noLookAhead = true; yy_state = 60; break yy_forNext;
+ case 6:
+ case 7:
+ case 13: yy_state = 56; break yy_forNext;
+ case 14: yy_state = 57; break yy_forNext;
+ case 16: yy_state = 58; break yy_forNext;
default: break yy_forAction;
}
@@ -789,261 +1096,1738 @@
switch (yy_input) {
case 6:
case 7:
- case 9:
- case 18: yy_isFinal = true; yy_state = 61; break yy_forNext;
+ case 13: yy_state = 56; break yy_forNext;
+ case 16: yy_state = 58; break yy_forNext;
+ case 14: yy_state = 103; break yy_forNext;
default: break yy_forAction;
}
case 58:
switch (yy_input) {
- case 23: yy_state = 62; break yy_forNext;
+ case 17: yy_state = 61; break yy_forNext;
+ case 14: yy_state = 104; break yy_forNext;
default: break yy_forAction;
}
case 59:
switch (yy_input) {
- case 15: yy_state = 63; break yy_forNext;
+ case 19: yy_isFinal = true; yy_state = 55; break yy_forNext;
+ case 14: yy_state = 60; break yy_forNext;
+ case 17: yy_state = 61; break yy_forNext;
+ case 0:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 9:
+ case 10:
+ case 11:
+ case 13:
+ case 15:
+ case 16:
+ case 26:
+ case 27:
+ case 30:
+ case 32:
+ case 36:
+ case 37:
+ case 38:
+ case 46:
+ case 47: break yy_forAction;
+ default: yy_isFinal = true; yy_state = 53; break yy_forNext;
+ }
+
+ case 60:
+ switch (yy_input) {
+ case 17: yy_state = 61; break yy_forNext;
+ case 19: yy_state = 100; break yy_forNext;
default: break yy_forAction;
}
case 61:
switch (yy_input) {
- case 6:
- case 7:
- case 9:
- case 18: yy_isFinal = true; yy_state = 61; break yy_forNext;
+ case 14: yy_state = 105; break yy_forNext;
+ case 18: yy_state = 106; break yy_forNext;
default: break yy_forAction;
}
case 62:
switch (yy_input) {
- case 19: yy_state = 64; break yy_forNext;
+ case 14: yy_state = 64; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 65; break yy_forNext;
default: break yy_forAction;
}
case 63:
switch (yy_input) {
- case 29: yy_state = 65; break yy_forNext;
+ case 14: yy_state = 66; break yy_forNext;
+ case 24: yy_state = 67; break yy_forNext;
default: break yy_forAction;
}
case 64:
switch (yy_input) {
- case 24: yy_state = 66; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 65; break yy_forNext;
default: break yy_forAction;
}
case 65:
switch (yy_input) {
- case 30: yy_state = 67; break yy_forNext;
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 107; break yy_forNext;
default: break yy_forAction;
}
case 66:
switch (yy_input) {
- case 6:
- case 7:
- case 9:
- case 18: yy_state = 66; break yy_forNext;
- case 8: yy_isFinal = true; yy_state = 68; break yy_forNext;
+ case 24: yy_state = 67; break yy_forNext;
default: break yy_forAction;
}
case 67:
switch (yy_input) {
- case 23: yy_state = 69; break yy_forNext;
+ case 14: yy_state = 108; break yy_forNext;
+ case 39: yy_state = 109; break yy_forNext;
default: break yy_forAction;
}
case 68:
switch (yy_input) {
- case 6:
- case 7:
- case 9:
- case 18: yy_isFinal = true; yy_state = 68; break yy_forNext;
+ case 14: yy_state = 71; break yy_forNext;
+ case 22: yy_state = 72; break yy_forNext;
default: break yy_forAction;
}
case 69:
switch (yy_input) {
- case 31: yy_state = 70; break yy_forNext;
+ case 14: yy_state = 73; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 74; break yy_forNext;
default: break yy_forAction;
}
case 70:
switch (yy_input) {
- case 6:
- case 7:
- case 9:
- case 18: yy_state = 70; break yy_forNext;
- case 8: yy_state = 71; break yy_forNext;
+ case 14: yy_state = 76; break yy_forNext;
+ case 28: yy_state = 77; break yy_forNext;
default: break yy_forAction;
}
case 71:
switch (yy_input) {
- case 6:
- case 7:
- case 9:
- case 18: yy_state = 71; break yy_forNext;
- case 20: yy_state = 72; break yy_forNext;
- case 32: yy_state = 73; break yy_forNext;
+ case 22: yy_state = 72; break yy_forNext;
default: break yy_forAction;
}
case 72:
switch (yy_input) {
- case 21: yy_state = 74; break yy_forNext;
+ case 14: yy_state = 110; break yy_forNext;
+ case 22: yy_state = 111; break yy_forNext;
default: break yy_forAction;
}
case 73:
switch (yy_input) {
- case 20: yy_state = 72; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 74; break yy_forNext;
default: break yy_forAction;
}
case 74:
switch (yy_input) {
- case 19: yy_state = 75; break yy_forNext;
- default: break yy_forAction;
- }
-
- case 75:
- switch (yy_input) {
- case 16: yy_state = 76; break yy_forNext;
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 112; break yy_forNext;
default: break yy_forAction;
}
case 76:
switch (yy_input) {
- case 15: yy_state = 77; break yy_forNext;
+ case 28: yy_state = 77; break yy_forNext;
default: break yy_forAction;
}
case 77:
switch (yy_input) {
- case 19: yy_state = 78; break yy_forNext;
+ case 14: yy_state = 113; break yy_forNext;
+ case 23: yy_state = 114; break yy_forNext;
default: break yy_forAction;
}
case 78:
switch (yy_input) {
- case 16: yy_state = 79; break yy_forNext;
+ case 6:
+ case 7:
+ case 13: yy_state = 78; break yy_forNext;
+ case 14: yy_state = 79; break yy_forNext;
+ case 18: yy_state = 80; break yy_forNext;
default: break yy_forAction;
}
case 79:
switch (yy_input) {
- case 28: yy_state = 80; break yy_forNext;
+ case 6:
+ case 7:
+ case 13: yy_state = 78; break yy_forNext;
+ case 18: yy_state = 80; break yy_forNext;
+ case 14: yy_state = 115; break yy_forNext;
default: break yy_forAction;
}
case 80:
switch (yy_input) {
- case 16: yy_state = 81; break yy_forNext;
+ case 14: yy_state = 116; break yy_forNext;
+ case 19: yy_state = 117; break yy_forNext;
default: break yy_forAction;
}
case 81:
switch (yy_input) {
- case 33: yy_state = 82; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 30; break yy_forNext;
+ case 14: yy_state = 82; break yy_forNext;
default: break yy_forAction;
}
case 82:
switch (yy_input) {
- case 27: yy_state = 83; break yy_forNext;
- default: break yy_forAction;
- }
-
- case 83:
- switch (yy_input) {
- case 15: yy_state = 84; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 30; break yy_forNext;
default: break yy_forAction;
}
case 84:
switch (yy_input) {
case 6:
- case 7:
- case 9:
- case 18: yy_state = 85; break yy_forNext;
- case 32: yy_state = 86; break yy_forNext;
- default: break yy_forAction;
+ case 13: yy_isFinal = true; yy_state = 32; break yy_forNext;
+ case 7: yy_state = 84; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 85; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 31; break yy_forNext;
}
case 85:
switch (yy_input) {
case 6:
- case 7:
- case 9:
- case 18: yy_state = 85; break yy_forNext;
- case 20: yy_state = 87; break yy_forNext;
- default: break yy_forAction;
- }
-
- case 86:
- switch (yy_input) {
- case 6:
- case 7:
- case 9:
- case 18: yy_state = 85; break yy_forNext;
- default: break yy_forAction;
- }
-
- case 87:
- switch (yy_input) {
- case 21: yy_state = 88; break yy_forNext;
- default: break yy_forAction;
- }
-
- case 88:
- switch (yy_input) {
- case 19: yy_state = 89; break yy_forNext;
- default: break yy_forAction;
+ case 13: yy_isFinal = true; yy_state = 32; break yy_forNext;
+ case 7: yy_state = 84; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 118; break yy_forNext;
+ default: yy_isFinal = true; yy_noLookAhead = true; yy_state = 31; break yy_forNext;
}
case 89:
switch (yy_input) {
- case 16: yy_state = 90; break yy_forNext;
+ case 14: yy_state = 90; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 91; break yy_forNext;
default: break yy_forAction;
}
case 90:
switch (yy_input) {
- case 15: yy_state = 91; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 91; break yy_forNext;
default: break yy_forAction;
}
case 91:
switch (yy_input) {
- case 19: yy_state = 92; break yy_forNext;
- default: break yy_forAction;
- }
-
- case 92:
- switch (yy_input) {
- case 16: yy_state = 93; break yy_forNext;
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 119; break yy_forNext;
default: break yy_forAction;
}
case 93:
switch (yy_input) {
- case 6:
- case 7:
- case 9:
- case 18: yy_state = 93; break yy_forNext;
- case 8: yy_isFinal = true; yy_state = 94; break yy_forNext;
+ case 38: yy_isFinal = true; yy_state = 38; break yy_forNext;
+ case 14: yy_state = 94; break yy_forNext;
default: break yy_forAction;
}
case 94:
switch (yy_input) {
+ case 38: yy_isFinal = true; yy_state = 38; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 97:
+ switch (yy_input) {
case 6:
case 7:
- case 9:
- case 18: yy_isFinal = true; yy_state = 94; break yy_forNext;
+ case 13: yy_isFinal = true; yy_pushback = true; yy_state = 97; break yy_forNext;
+ case 14: yy_isFinal = true; yy_pushback = true; yy_state = 120; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 98:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_pushback = true; yy_state = 97; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 100:
+ switch (yy_input) {
+ case 14: yy_state = 101; break yy_forNext;
+ case 21: yy_state = 121; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 101:
+ switch (yy_input) {
+ case 21: yy_state = 121; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 102:
+ switch (yy_input) {
+ case 14: yy_state = 122; break yy_forNext;
+ case 22: yy_isFinal = true; yy_state = 123; break yy_forNext;
+ case 0:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 13:
+ case 15:
+ case 16:
+ case 17:
+ case 26:
+ case 27:
+ case 30:
+ case 38:
+ case 46:
+ case 47: break yy_forAction;
+ default: yy_isFinal = true; yy_state = 53; break yy_forNext;
+ }
+
+ case 103:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 56; break yy_forNext;
+ case 16: yy_state = 58; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 104:
+ switch (yy_input) {
+ case 17: yy_state = 61; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 105:
+ switch (yy_input) {
+ case 18: yy_state = 106; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 106:
+ switch (yy_input) {
+ case 14: yy_state = 124; break yy_forNext;
+ case 19: yy_state = 125; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 108:
+ switch (yy_input) {
+ case 39: yy_state = 109; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 109:
+ switch (yy_input) {
+ case 14: yy_state = 126; break yy_forNext;
+ case 33: yy_state = 127; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 110:
+ switch (yy_input) {
+ case 22: yy_state = 111; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 111:
+ switch (yy_input) {
+ case 14: yy_state = 128; break yy_forNext;
+ case 29: yy_state = 129; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 113:
+ switch (yy_input) {
+ case 23: yy_state = 114; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 114:
+ switch (yy_input) {
+ case 14: yy_state = 130; break yy_forNext;
+ case 34: yy_state = 131; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 115:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 78; break yy_forNext;
+ case 18: yy_state = 80; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 116:
+ switch (yy_input) {
+ case 19: yy_state = 117; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 117:
+ switch (yy_input) {
+ case 14: yy_state = 132; break yy_forNext;
+ case 20: yy_state = 133; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 118:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 84; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 120:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_pushback = true; yy_state = 97; break yy_forNext;
+ case 14: yy_state = 98; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 121:
+ switch (yy_input) {
+ case 14: yy_state = 122; break yy_forNext;
+ case 22: yy_state = 134; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 122:
+ switch (yy_input) {
+ case 22: yy_state = 134; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 123:
+ switch (yy_input) {
+ case 14: yy_state = 135; break yy_forNext;
+ case 23: yy_isFinal = true; yy_state = 136; break yy_forNext;
+ case 0:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 13:
+ case 15:
+ case 16:
+ case 17:
+ case 26:
+ case 27:
+ case 30:
+ case 38:
+ case 46:
+ case 47: break yy_forAction;
+ default: yy_isFinal = true; yy_state = 53; break yy_forNext;
+ }
+
+ case 124:
+ switch (yy_input) {
+ case 19: yy_state = 125; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 125:
+ switch (yy_input) {
+ case 14: yy_state = 137; break yy_forNext;
+ case 20: yy_state = 138; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 126:
+ switch (yy_input) {
+ case 33: yy_state = 127; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 127:
+ switch (yy_input) {
+ case 14: yy_state = 139; break yy_forNext;
+ case 40: yy_state = 140; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 128:
+ switch (yy_input) {
+ case 29: yy_state = 129; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 129:
+ switch (yy_input) {
+ case 11: yy_state = 141; break yy_forNext;
+ case 14: yy_state = 142; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 130:
+ switch (yy_input) {
+ case 34: yy_state = 131; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 131:
+ switch (yy_input) {
+ case 14: yy_state = 143; break yy_forNext;
+ case 25: yy_state = 144; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 132:
+ switch (yy_input) {
+ case 20: yy_state = 133; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 133:
+ switch (yy_input) {
+ case 14: yy_state = 145; break yy_forNext;
+ case 24: yy_state = 146; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 134:
+ switch (yy_input) {
+ case 14: yy_state = 135; break yy_forNext;
+ case 23: yy_isFinal = true; yy_state = 147; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 135:
+ switch (yy_input) {
+ case 23: yy_isFinal = true; yy_state = 147; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 136:
+ switch (yy_input) {
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 148; break yy_forNext;
+ case 0:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 13:
+ case 15:
+ case 16:
+ case 17:
+ case 26:
+ case 27:
+ case 30:
+ case 38:
+ case 46:
+ case 47: break yy_forAction;
+ default: yy_isFinal = true; yy_state = 53; break yy_forNext;
+ }
+
+ case 137:
+ switch (yy_input) {
+ case 20: yy_state = 138; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 138:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 149; break yy_forNext;
+ case 14: yy_state = 150; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 139:
+ switch (yy_input) {
+ case 40: yy_state = 140; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 140:
+ switch (yy_input) {
+ case 14: yy_state = 151; break yy_forNext;
+ case 41: yy_state = 152; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 141:
+ switch (yy_input) {
+ case 14: yy_state = 153; break yy_forNext;
+ case 21: yy_state = 154; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 142:
+ switch (yy_input) {
+ case 11: yy_state = 141; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 143:
+ switch (yy_input) {
+ case 25: yy_state = 144; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 144:
+ switch (yy_input) {
+ case 14: yy_state = 155; break yy_forNext;
+ case 21: yy_state = 156; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 145:
+ switch (yy_input) {
+ case 24: yy_state = 146; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 146:
+ switch (yy_input) {
+ case 14: yy_state = 157; break yy_forNext;
+ case 25: yy_state = 158; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 147:
+ switch (yy_input) {
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 148; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 149:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 149; break yy_forNext;
+ case 14: yy_isFinal = true; yy_state = 159; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 150:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 149; break yy_forNext;
+ case 14: yy_state = 160; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 151:
+ switch (yy_input) {
+ case 41: yy_state = 152; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 152:
+ switch (yy_input) {
+ case 14: yy_state = 161; break yy_forNext;
+ case 24: yy_state = 162; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 153:
+ switch (yy_input) {
+ case 21: yy_state = 154; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 154:
+ switch (yy_input) {
+ case 14: yy_state = 163; break yy_forNext;
+ case 42: yy_state = 164; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 155:
+ switch (yy_input) {
+ case 21: yy_state = 156; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 156:
+ switch (yy_input) {
+ case 14: yy_state = 165; break yy_forNext;
+ case 22: yy_state = 166; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 157:
+ switch (yy_input) {
+ case 25: yy_state = 158; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 158:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 158; break yy_forNext;
+ case 14: yy_state = 167; break yy_forNext;
+ case 15: yy_state = 168; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 159:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 149; break yy_forNext;
+ case 14: yy_state = 160; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 160:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 149; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 161:
+ switch (yy_input) {
+ case 24: yy_state = 162; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 162:
+ switch (yy_input) {
+ case 14: yy_state = 169; break yy_forNext;
+ case 35: yy_state = 170; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 163:
+ switch (yy_input) {
+ case 42: yy_state = 164; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 164:
+ switch (yy_input) {
+ case 14: yy_state = 171; break yy_forNext;
+ case 43: yy_state = 172; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 165:
+ switch (yy_input) {
+ case 22: yy_state = 166; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 166:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 166; break yy_forNext;
+ case 14: yy_state = 173; break yy_forNext;
+ case 15: yy_isFinal = true; yy_state = 174; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 167:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 158; break yy_forNext;
+ case 15: yy_state = 168; break yy_forNext;
+ case 14: yy_state = 175; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 168:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 168; break yy_forNext;
+ case 14: yy_state = 176; break yy_forNext;
+ case 26:
+ case 27: yy_state = 177; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 169:
+ switch (yy_input) {
+ case 35: yy_state = 170; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 170:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 170; break yy_forNext;
+ case 14: yy_state = 178; break yy_forNext;
+ case 15: yy_isFinal = true; yy_state = 179; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 171:
+ switch (yy_input) {
+ case 43: yy_state = 172; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 172:
+ switch (yy_input) {
+ case 14: yy_state = 180; break yy_forNext;
+ case 41: yy_state = 181; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 173:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 166; break yy_forNext;
+ case 15: yy_isFinal = true; yy_state = 174; break yy_forNext;
+ case 14: yy_state = 182; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 174:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 183; break yy_forNext;
+ case 14: yy_state = 184; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 175:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 158; break yy_forNext;
+ case 15: yy_state = 168; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 176:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 168; break yy_forNext;
+ case 26:
+ case 27: yy_state = 177; break yy_forNext;
+ case 14: yy_state = 185; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 177:
+ switch (yy_input) {
+ case 14: yy_state = 186; break yy_forNext;
+ case 28: yy_state = 187; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 178:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 170; break yy_forNext;
+ case 15: yy_isFinal = true; yy_state = 179; break yy_forNext;
+ case 14: yy_state = 188; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 179:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 189; break yy_forNext;
+ case 14: yy_state = 190; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 180:
+ switch (yy_input) {
+ case 41: yy_state = 181; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 181:
+ switch (yy_input) {
+ case 14: yy_state = 191; break yy_forNext;
+ case 44: yy_state = 192; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 182:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 166; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 183:
+ switch (yy_input) {
+ case 14: yy_isFinal = true; yy_state = 174; break yy_forNext;
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 183; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 184:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 183; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 185:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 168; break yy_forNext;
+ case 26:
+ case 27: yy_state = 177; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 186:
+ switch (yy_input) {
+ case 28: yy_state = 187; break yy_forNext;
+ case 14: yy_state = 193; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 187:
+ switch (yy_input) {
+ case 14: yy_state = 194; break yy_forNext;
+ case 22: yy_state = 195; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 188:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 170; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 189:
+ switch (yy_input) {
+ case 14: yy_isFinal = true; yy_state = 179; break yy_forNext;
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 189; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 190:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 189; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 191:
+ switch (yy_input) {
+ case 44: yy_state = 192; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 192:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 192; break yy_forNext;
+ case 14: yy_state = 196; break yy_forNext;
+ case 15: yy_state = 197; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 193:
+ switch (yy_input) {
+ case 28: yy_state = 187; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 194:
+ switch (yy_input) {
+ case 22: yy_state = 195; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 195:
+ switch (yy_input) {
+ case 14: yy_state = 198; break yy_forNext;
+ case 22: yy_state = 199; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 196:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 192; break yy_forNext;
+ case 15: yy_state = 197; break yy_forNext;
+ case 14: yy_state = 200; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 197:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 201; break yy_forNext;
+ case 14: yy_state = 202; break yy_forNext;
+ case 26: yy_state = 203; break yy_forNext;
+ case 39: yy_state = 204; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 198:
+ switch (yy_input) {
+ case 22: yy_state = 199; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 199:
+ switch (yy_input) {
+ case 14: yy_state = 205; break yy_forNext;
+ case 29: yy_state = 206; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 200:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 192; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 201:
+ switch (yy_input) {
+ case 14: yy_state = 197; break yy_forNext;
+ case 6:
+ case 7:
+ case 13: yy_state = 201; break yy_forNext;
+ case 26: yy_state = 203; break yy_forNext;
+ case 39: yy_state = 204; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 202:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 201; break yy_forNext;
+ case 26: yy_state = 203; break yy_forNext;
+ case 39: yy_state = 204; break yy_forNext;
+ case 14: yy_state = 207; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 203:
+ switch (yy_input) {
+ case 39: yy_state = 204; break yy_forNext;
+ case 14: yy_state = 207; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 204:
+ switch (yy_input) {
+ case 14: yy_state = 208; break yy_forNext;
+ case 33: yy_state = 209; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 205:
+ switch (yy_input) {
+ case 29: yy_state = 206; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 206:
+ switch (yy_input) {
+ case 12: yy_state = 210; break yy_forNext;
+ case 14: yy_state = 211; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 207:
+ switch (yy_input) {
+ case 39: yy_state = 204; break yy_forNext;
+ case 14: yy_state = 212; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 208:
+ switch (yy_input) {
+ case 33: yy_state = 209; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 209:
+ switch (yy_input) {
+ case 14: yy_state = 213; break yy_forNext;
+ case 24: yy_state = 214; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 210:
+ switch (yy_input) {
+ case 14: yy_state = 215; break yy_forNext;
+ case 30: yy_state = 216; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 211:
+ switch (yy_input) {
+ case 12: yy_state = 210; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 212:
+ switch (yy_input) {
+ case 39: yy_state = 204; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 213:
+ switch (yy_input) {
+ case 24: yy_state = 214; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 214:
+ switch (yy_input) {
+ case 14: yy_state = 217; break yy_forNext;
+ case 22: yy_state = 218; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 215:
+ switch (yy_input) {
+ case 30: yy_state = 216; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 216:
+ switch (yy_input) {
+ case 14: yy_state = 219; break yy_forNext;
+ case 30: yy_state = 220; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 217:
+ switch (yy_input) {
+ case 22: yy_state = 218; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 218:
+ switch (yy_input) {
+ case 14: yy_state = 221; break yy_forNext;
+ case 21: yy_state = 222; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 219:
+ switch (yy_input) {
+ case 30: yy_state = 220; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 220:
+ switch (yy_input) {
+ case 14: yy_state = 223; break yy_forNext;
+ case 31: yy_state = 224; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 221:
+ switch (yy_input) {
+ case 21: yy_state = 222; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 222:
+ switch (yy_input) {
+ case 14: yy_state = 225; break yy_forNext;
+ case 24: yy_state = 226; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 223:
+ switch (yy_input) {
+ case 31: yy_state = 224; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 224:
+ switch (yy_input) {
+ case 14: yy_state = 227; break yy_forNext;
+ case 31: yy_state = 228; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 225:
+ switch (yy_input) {
+ case 24: yy_state = 226; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 226:
+ switch (yy_input) {
+ case 14: yy_state = 229; break yy_forNext;
+ case 22: yy_state = 230; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 227:
+ switch (yy_input) {
+ case 31: yy_state = 228; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 228:
+ switch (yy_input) {
+ case 14: yy_state = 231; break yy_forNext;
+ case 31: yy_state = 232; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 229:
+ switch (yy_input) {
+ case 22: yy_state = 230; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 230:
+ switch (yy_input) {
+ case 11: yy_state = 233; break yy_forNext;
+ case 14: yy_state = 234; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 231:
+ switch (yy_input) {
+ case 31: yy_state = 232; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 232:
+ switch (yy_input) {
+ case 10: yy_state = 235; break yy_forNext;
+ case 14: yy_state = 236; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 233:
+ switch (yy_input) {
+ case 14: yy_state = 237; break yy_forNext;
+ case 22: yy_state = 238; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 234:
+ switch (yy_input) {
+ case 11: yy_state = 233; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 235:
+ switch (yy_input) {
+ case 14: yy_state = 239; break yy_forNext;
+ case 31: yy_state = 240; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 236:
+ switch (yy_input) {
+ case 10: yy_state = 235; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 237:
+ switch (yy_input) {
+ case 22: yy_state = 238; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 238:
+ switch (yy_input) {
+ case 14: yy_state = 241; break yy_forNext;
+ case 45: yy_state = 242; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 239:
+ switch (yy_input) {
+ case 31: yy_state = 240; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 240:
+ switch (yy_input) {
+ case 14: yy_state = 243; break yy_forNext;
+ case 32: yy_state = 244; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 241:
+ switch (yy_input) {
+ case 45: yy_state = 242; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 242:
+ switch (yy_input) {
+ case 14: yy_state = 245; break yy_forNext;
+ case 29: yy_state = 246; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 243:
+ switch (yy_input) {
+ case 32: yy_state = 244; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 244:
+ switch (yy_input) {
+ case 10: yy_state = 247; break yy_forNext;
+ case 14: yy_state = 248; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 245:
+ switch (yy_input) {
+ case 29: yy_state = 246; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 246:
+ switch (yy_input) {
+ case 14: yy_state = 249; break yy_forNext;
+ case 21: yy_state = 250; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 247:
+ switch (yy_input) {
+ case 14: yy_state = 251; break yy_forNext;
+ case 33: yy_state = 252; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 248:
+ switch (yy_input) {
+ case 10: yy_state = 247; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 249:
+ switch (yy_input) {
+ case 21: yy_state = 250; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 250:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 253; break yy_forNext;
+ case 14: yy_state = 254; break yy_forNext;
+ case 26: yy_state = 255; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 251:
+ switch (yy_input) {
+ case 33: yy_state = 252; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 252:
+ switch (yy_input) {
+ case 14: yy_state = 256; break yy_forNext;
+ case 34: yy_state = 257; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 253:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 253; break yy_forNext;
+ case 14: yy_state = 258; break yy_forNext;
+ case 39: yy_state = 259; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 254:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 253; break yy_forNext;
+ case 26: yy_state = 255; break yy_forNext;
+ case 14: yy_state = 260; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 255:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 253; break yy_forNext;
+ case 14: yy_state = 260; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 256:
+ switch (yy_input) {
+ case 34: yy_state = 257; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 257:
+ switch (yy_input) {
+ case 14: yy_state = 261; break yy_forNext;
+ case 35: yy_state = 262; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 258:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 253; break yy_forNext;
+ case 39: yy_state = 259; break yy_forNext;
+ case 14: yy_state = 263; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 259:
+ switch (yy_input) {
+ case 14: yy_state = 264; break yy_forNext;
+ case 33: yy_state = 265; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 260:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 253; break yy_forNext;
+ case 14: yy_state = 266; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 261:
+ switch (yy_input) {
+ case 35: yy_state = 262; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 262:
+ switch (yy_input) {
+ case 14: yy_state = 267; break yy_forNext;
+ case 30: yy_state = 268; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 263:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 253; break yy_forNext;
+ case 39: yy_state = 259; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 264:
+ switch (yy_input) {
+ case 33: yy_state = 265; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 265:
+ switch (yy_input) {
+ case 14: yy_state = 269; break yy_forNext;
+ case 24: yy_state = 270; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 266:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 253; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 267:
+ switch (yy_input) {
+ case 30: yy_state = 268; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 268:
+ switch (yy_input) {
+ case 14: yy_state = 271; break yy_forNext;
+ case 36: yy_state = 272; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 269:
+ switch (yy_input) {
+ case 24: yy_state = 270; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 270:
+ switch (yy_input) {
+ case 14: yy_state = 273; break yy_forNext;
+ case 22: yy_state = 274; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 271:
+ switch (yy_input) {
+ case 36: yy_state = 272; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 272:
+ switch (yy_input) {
+ case 14: yy_state = 275; break yy_forNext;
+ case 37: yy_state = 276; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 273:
+ switch (yy_input) {
+ case 22: yy_state = 274; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 274:
+ switch (yy_input) {
+ case 14: yy_state = 277; break yy_forNext;
+ case 21: yy_state = 278; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 275:
+ switch (yy_input) {
+ case 37: yy_state = 276; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 276:
+ switch (yy_input) {
+ case 14: yy_state = 279; break yy_forNext;
+ case 37: yy_state = 280; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 277:
+ switch (yy_input) {
+ case 21: yy_state = 278; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 278:
+ switch (yy_input) {
+ case 14: yy_state = 281; break yy_forNext;
+ case 24: yy_state = 282; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 279:
+ switch (yy_input) {
+ case 37: yy_state = 280; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 280:
+ switch (yy_input) {
+ case 14: yy_state = 283; break yy_forNext;
+ case 37: yy_state = 284; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 281:
+ switch (yy_input) {
+ case 24: yy_state = 282; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 282:
+ switch (yy_input) {
+ case 14: yy_state = 285; break yy_forNext;
+ case 22: yy_state = 286; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 283:
+ switch (yy_input) {
+ case 37: yy_state = 284; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 284:
+ switch (yy_input) {
+ case 14: yy_state = 287; break yy_forNext;
+ case 30: yy_state = 288; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 285:
+ switch (yy_input) {
+ case 22: yy_state = 286; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 286:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 286; break yy_forNext;
+ case 14: yy_state = 289; break yy_forNext;
+ case 15: yy_isFinal = true; yy_state = 290; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 287:
+ switch (yy_input) {
+ case 30: yy_state = 288; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 288:
+ switch (yy_input) {
+ case 14: yy_state = 291; break yy_forNext;
+ case 18: yy_state = 292; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 289:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 286; break yy_forNext;
+ case 15: yy_isFinal = true; yy_state = 290; break yy_forNext;
+ case 14: yy_state = 293; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 290:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 294; break yy_forNext;
+ case 14: yy_state = 295; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 291:
+ switch (yy_input) {
+ case 18: yy_state = 292; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 292:
+ switch (yy_input) {
+ case 14: yy_state = 296; break yy_forNext;
+ case 28: yy_state = 297; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 293:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_state = 286; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 294:
+ switch (yy_input) {
+ case 14: yy_isFinal = true; yy_state = 290; break yy_forNext;
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 294; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 295:
+ switch (yy_input) {
+ case 6:
+ case 7:
+ case 13: yy_isFinal = true; yy_state = 294; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 296:
+ switch (yy_input) {
+ case 28: yy_state = 297; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 297:
+ switch (yy_input) {
+ case 14: yy_state = 298; break yy_forNext;
+ case 22: yy_state = 299; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 298:
+ switch (yy_input) {
+ case 22: yy_state = 299; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 299:
+ switch (yy_input) {
+ case 14: yy_state = 300; break yy_forNext;
+ case 19: yy_state = 301; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 300:
+ switch (yy_input) {
+ case 19: yy_state = 301; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 301:
+ switch (yy_input) {
+ case 14: yy_state = 302; break yy_forNext;
+ case 20: yy_isFinal = true; yy_state = 303; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 302:
+ switch (yy_input) {
+ case 20: yy_isFinal = true; yy_state = 303; break yy_forNext;
+ default: break yy_forAction;
+ }
+
+ case 303:
+ switch (yy_input) {
+ case 14: yy_isFinal = true; yy_noLookAhead = true; yy_state = 304; break yy_forNext;
default: break yy_forAction;
}
@@ -1053,6 +2837,7 @@
} }
if ( yy_isFinal ) {
+ yy_was_pushback = yy_pushback;
yy_action = yy_state;
yy_markedPos = yy_currentPos;
if ( yy_noLookAhead ) break yy_forAction;
@@ -1061,36 +2846,46 @@
}
}
+ if (yy_was_pushback)
+ yy_markedPos = yy_pushbackPos;
switch (yy_action) {
- case 26:
- { yypushback(1);popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue; }
- case 96: break;
- case 20:
- case 21:
- { yypushback(1); yybegin(UnDelimitedString); string.setLength(0); }
- case 97: break;
- case 17:
- { yybegin(YYINITIAL); if (foundContentTypeValue) hasMore = false; return HTMLHeadTokenizerConstants.MetaTagEnd; }
- case 98: break;
- case 31:
- { yypushback(1);popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue; }
- case 99: break;
- case 43:
+ case 91:
+ case 119:
+ { yypushback(yylength()); popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue; }
+ case 306: break;
+ case 74:
+ case 112:
{ yybegin(YYINITIAL); if (foundContentTypeValue) hasMore = false; return HTMLHeadTokenizerConstants.MetaTagEnd; }
- case 100: break;
- case 45:
- { yypushback(2); popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue; }
- case 101: break;
+ case 307: break;
+ case 38:
+ case 88:
+ { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue; }
+ case 308: break;
+ case 31:
+ case 32:
+ case 34:
+ case 85:
+ case 118:
+ { yypushback(1); yybegin(UnDelimitedString); string.setLength(0); }
+ case 309: break;
+ case 30:
+ case 83:
+ { yybegin(YYINITIAL); isDocumentRootElementChecked = true; return HTMLHeadTokenizerConstants.RootElementTagEnd; }
+ case 310: break;
+ case 25:
+ case 75:
+ { yybegin(YYINITIAL); if (foundContentTypeValue) hasMore = false; return HTMLHeadTokenizerConstants.MetaTagEnd; }
+ case 311: break;
case 46:
- { yypushback(2);popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTerminatedStringValue; }
- case 102: break;
- case 61:
+ case 96:
+ { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.InvalidTermintatedUnDelimitedStringValue; }
+ case 312: break;
+ case 149:
+ case 159:
{ if (yychar == 0 ) {yybegin(ST_XMLDecl); return XMLHeadTokenizerConstants.XMLDeclStart;} }
- case 103: break;
- case 8:
- case 9:
+ case 313: break;
case 10:
case 11:
case 12:
@@ -1098,50 +2893,93 @@
case 14:
case 15:
case 16:
+ case 17:
case 18:
case 19:
+ case 20:
+ case 21:
case 22:
- { if (yychar > MAX_TO_SCAN) {hasMore=false; return EncodingParserConstants.MAX_CHARS_REACHED;} }
- case 104: break;
- case 60:
- { yybegin(ST_META_TAG); return HTMLHeadTokenizerConstants.MetaTagStart; }
- case 105: break;
- case 40:
- { yybegin(YYINITIAL); return XMLHeadTokenizerConstants.XMLDeclEnd; }
- case 106: break;
- case 94:
- { pushCurrentState(); yybegin(QuotedAttributeValue); foundContentTypeValue=true; return HTMLHeadTokenizerConstants.MetaTagContentType; }
- case 107: break;
- case 68:
- { pushCurrentState(); yybegin(QuotedAttributeValue); return XMLHeadTokenizerConstants.XMLDelEncoding; }
- case 108: break;
- case 33:
- { hasMore = false; return EncodingParserConstants.UTF16BE; }
- case 109: break;
- case 34:
- { hasMore = false; return EncodingParserConstants.UTF16LE; }
- case 110: break;
- case 47:
- { hasMore = false; return EncodingParserConstants.UTF83ByteBOM; }
- case 111: break;
- case 28:
- { popState(); valueText = string.toString(); return EncodingParserConstants.StringValue; }
- case 112: break;
- case 25:
- case 27:
- case 29:
- case 32:
- { string.append( yytext() ); }
- case 113: break;
- case 24:
- { yybegin(SQ_STRING); string.setLength(0); }
- case 114: break;
case 23:
+ case 24:
+ case 26:
+ case 27:
+ case 28:
+ case 29:
+ case 33:
+ case 39:
+ case 42:
+ case 45:
+ { if(yychar > MAX_TO_SCAN) {hasMore=false; return EncodingParserConstants.MAX_CHARS_REACHED;} }
+ case 314: break;
+ case 136:
+ case 147:
+ case 148:
+ { yybegin(ST_META_TAG); return HTMLHeadTokenizerConstants.MetaTagStart; }
+ case 315: break;
+ case 65:
+ case 107:
+ { yybegin(YYINITIAL); return XMLHeadTokenizerConstants.XMLDeclEnd; }
+ case 316: break;
+ case 290:
+ case 294:
+ { pushCurrentState(); yybegin(QuotedAttributeValue); foundContentTypeValue=true; return HTMLHeadTokenizerConstants.MetaTagContentType; }
+ case 317: break;
+ case 179:
+ case 189:
+ { pushCurrentState(); yybegin(QuotedAttributeValue); this.isXHTML = true; return XMLHeadTokenizerConstants.XMLDelEncoding; }
+ case 318: break;
+ case 174:
+ case 183:
+ { pushCurrentState(); yybegin(QuotedAttributeValue); foundContentTypeValue=true; hasCharsetAttr=true; return HTMLHeadTokenizerConstants.MetaTagContentType; }
+ case 319: break;
+ case 303:
+ case 304:
+ { isXHTML = true; }
+ case 320: break;
+ case 99:
+ { hasMore = false; return EncodingParserConstants.UTF83ByteBOM; }
+ case 321: break;
+ case 49:
+ { hasMore = false; return EncodingParserConstants.UTF16BE; }
+ case 322: break;
+ case 50:
+ { hasMore = false; return EncodingParserConstants.UTF16LE; }
+ case 323: break;
+ case 37:
+ case 40:
+ case 43:
+ { string.append( yytext() ); }
+ case 324: break;
+ case 36:
+ case 87:
+ { yybegin(SQ_STRING); string.setLength(0); }
+ case 325: break;
+ case 35:
+ case 86:
{ yybegin(DQ_STRING); string.setLength(0); }
- case 115: break;
- case 30:
- { yypushback(1);popState(); valueText = string.toString(); return EncodingParserConstants.UnDelimitedStringValue; }
- case 116: break;
+ case 326: break;
+ case 41:
+ case 92:
+ { popState(); valueText = string.toString(); return EncodingParserConstants.StringValue; }
+ case 327: break;
+ case 44:
+ case 95:
+ { yypushback(yylength());popState(); valueText = string.toString(); return EncodingParserConstants.UnDelimitedStringValue; }
+ case 328: break;
+ case 47:
+ case 97:
+ case 120:
+ { pushCurrentState(); yybegin(UnDelimitedCharset); string.append( yytext() ); }
+ case 329: break;
+ case 53:
+ case 55:
+ case 102:
+ case 123:
+ { if (!isDocumentRootElementChecked()){yybegin(ST_XMLNameSpace); return HTMLHeadTokenizerConstants.DocumentRootNameSpace;} }
+ case 330: break;
+ case 48:
+ { yypushback(1); popState(); }
+ case 331: break;
default:
if (yy_input == YYEOF && yy_startRead == yy_currentPos) {
yy_atEOF = true;
@@ -1155,52 +2993,5 @@
}
}
- /**
- * Runs the scanner on input files.
- *
- * This main method is the debugging routine for the scanner.
- * It prints each returned token to System.out until the end of
- * file is reached, or an error occured.
- *
- * @param argv the command line, contains the filenames to run
- * the scanner on.
- */
- public static void main(String argv[]) {
- for (int i = 0; i < argv.length; i++) {
- HTMLHeadTokenizer scanner = null;
- try {
- scanner = new HTMLHeadTokenizer( new java.io.FileReader(argv[i]) );
- }
- catch (java.io.FileNotFoundException e) {
- System.out.println("File not found : \""+argv[i]+"\"");
- System.exit(1);
- }
- catch (java.io.IOException e) {
- System.out.println("Error opening file \""+argv[i]+"\"");
- System.exit(1);
- }
- catch (ArrayIndexOutOfBoundsException e) {
- System.out.println("Usage : java HTMLHeadTokenizer <inputfile>");
- System.exit(1);
- }
-
- try {
- do {
- System.out.println(scanner.primGetNextToken());
- } while (!scanner.yy_atEOF);
-
- }
- catch (java.io.IOException e) {
- System.out.println("An I/O error occured while scanning :");
- System.out.println(e);
- System.exit(1);
- }
- catch (Exception e) {
- e.printStackTrace();
- System.exit(1);
- }
- }
- }
-
}