diff --git a/python/python-tests.iml b/python/python-tests.iml
index ceff856a0060..aaceaf0ad8ff 100644
--- a/python/python-tests.iml
+++ b/python/python-tests.iml
@@ -21,7 +21,6 @@
-
diff --git a/python/src/com/jetbrains/python/PythonCommenter.java b/python/src/com/jetbrains/python/PythonCommenter.java
index 160725039542..2f0d75d55bf6 100644
--- a/python/src/com/jetbrains/python/PythonCommenter.java
+++ b/python/src/com/jetbrains/python/PythonCommenter.java
@@ -11,7 +11,7 @@ import org.jetbrains.annotations.Nullable;
*/
public class PythonCommenter implements CodeDocumentationAwareCommenter, IndentedCommenter {
public String getLineCommentPrefix() {
- return "# ";
+ return "#";
}
public String getBlockCommentPrefix() {
diff --git a/python/src/com/jetbrains/python/lexer/Python.flex b/python/src/com/jetbrains/python/lexer/Python.flex
index 7ccfa97ae3f6..b551ffe8bb8e 100644
--- a/python/src/com/jetbrains/python/lexer/Python.flex
+++ b/python/src/com/jetbrains/python/lexer/Python.flex
@@ -71,7 +71,6 @@ TRIPLE_APOS_LITERAL = {THREE_APOS} {APOS_STRING_CHAR}* {THREE_APOS}?
%state PENDING_DOCSTRING
%state IN_DOCSTRING_OWNER
-%state USUAL
%{
private int getSpaceLength(CharSequence string) {
int i = Math.max(StringUtil.lastIndexOf(string, '"', 0, string.length()), StringUtil.lastIndexOf(string, '\'', 0, string.length()));
@@ -89,18 +88,15 @@ return yylength()-i-1;
{END_OF_LINE_COMMENT} { return PyTokenTypes.END_OF_LINE_COMMENT; }
"\\" { return PyTokenTypes.BACKSLASH; }
- {
-. { yypushback(1); yybegin(PENDING_DOCSTRING);}
-}
- {
+ {
{LONGINTEGER} { return PyTokenTypes.INTEGER_LITERAL; }
{INTEGER} { return PyTokenTypes.INTEGER_LITERAL; }
{FLOATNUMBER} { return PyTokenTypes.FLOAT_LITERAL; }
{IMAGNUMBER} { return PyTokenTypes.IMAGINARY_LITERAL; }
-{SINGLE_QUOTED_STRING} { return PyTokenTypes.SINGLE_QUOTED_STRING; }
-{TRIPLE_QUOTED_STRING} { return PyTokenTypes.TRIPLE_QUOTED_STRING; }
+{SINGLE_QUOTED_STRING} { if (zzCurrentPos == 0) return PyTokenTypes.DOCSTRING; return PyTokenTypes.SINGLE_QUOTED_STRING; }
+{TRIPLE_QUOTED_STRING} { if (zzCurrentPos == 0) return PyTokenTypes.DOCSTRING; return PyTokenTypes.TRIPLE_QUOTED_STRING; }
"and" { return PyTokenTypes.AND_KEYWORD; }
"assert" { return PyTokenTypes.ASSERT_KEYWORD; }
@@ -188,13 +184,13 @@ return yylength()-i-1;
{
{SINGLE_QUOTED_STRING} { if (zzInput == YYEOF) return PyTokenTypes.DOCSTRING;
- else yybegin(USUAL); return PyTokenTypes.SINGLE_QUOTED_STRING; }
+ else yybegin(YYINITIAL); return PyTokenTypes.SINGLE_QUOTED_STRING; }
{TRIPLE_QUOTED_STRING} { if (zzInput == YYEOF) return PyTokenTypes.DOCSTRING;
- else yybegin(USUAL); return PyTokenTypes.TRIPLE_QUOTED_STRING; }
-{DOCSTRING_LITERAL}[\ \t]*[\n;] { yypushback(getSpaceLength(yytext())); yybegin(USUAL); return PyTokenTypes.DOCSTRING; }
+ else yybegin(YYINITIAL); return PyTokenTypes.TRIPLE_QUOTED_STRING; }
+{DOCSTRING_LITERAL}[\ \t]*[\n;] { yypushback(getSpaceLength(yytext())); yybegin(YYINITIAL); return PyTokenTypes.DOCSTRING; }
{DOCSTRING_LITERAL}[\ \t]*"\\" {
yypushback(getSpaceLength(yytext())); return PyTokenTypes.DOCSTRING; }
-. { yypushback(1); yybegin(USUAL); }
+. { yypushback(1); yybegin(YYINITIAL); }
}
diff --git a/python/src/com/jetbrains/python/lexer/_PythonLexer.java b/python/src/com/jetbrains/python/lexer/_PythonLexer.java
index ae682695afb8..0bd022fda991 100644
--- a/python/src/com/jetbrains/python/lexer/_PythonLexer.java
+++ b/python/src/com/jetbrains/python/lexer/_PythonLexer.java
@@ -1,4 +1,4 @@
-/* The following code was generated by JFlex 1.4.3 on 3/28/13 3:36 PM */
+/* The following code was generated by JFlex 1.4.3 on 5/21/13 5:54 PM */
/* It's an automatically generated code. Do not modify it. */
package com.jetbrains.python.lexer;
@@ -12,8 +12,8 @@ import com.intellij.openapi.util.text.StringUtil;
/**
* This class is a scanner generated by
* JFlex 1.4.3
- * on 3/28/13 3:36 PM from the specification file
- * ./Python.flex
+ * on 5/21/13 5:54 PM from the specification file
+ * /home/ktisha/IDEA/tools/lexer/../../python/src/com/jetbrains/python/lexer/Python.flex
*/
class _PythonLexer implements FlexLexer {
/** initial size of the lookahead buffer */
@@ -23,7 +23,6 @@ class _PythonLexer implements FlexLexer {
public static final int YYINITIAL = 0;
public static final int IN_DOCSTRING_OWNER = 4;
public static final int PENDING_DOCSTRING = 2;
- public static final int USUAL = 6;
/**
* ZZ_LEXSTATE[l] is the state in the DFA for the lexical state l
@@ -32,7 +31,7 @@ class _PythonLexer implements FlexLexer {
* l is of the form l = 2*k, k a non negative integer
*/
private static final int ZZ_LEXSTATE[] = {
- 0, 0, 1, 1, 2, 2, 3, 3
+ 0, 0, 1, 1, 2, 2
};
/**
@@ -76,90 +75,108 @@ class _PythonLexer implements FlexLexer {
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
- "\1\14\1\14\1\14\4\14\31\0\140\14\22\14\4\0\14\14\16\0"+
- "\5\14\11\0\1\14\21\0\130\22\5\0\23\22\12\0\1\14\13\0"+
- "\1\14\1\0\3\14\1\0\1\14\1\0\2\14\1\14\21\14\1\0"+
- "\11\14\43\14\1\0\2\14\3\14\3\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\7\14\2\14\1\14\2\14\2\14\1\14\1\14"+
+ "\4\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\105\14"+
+ "\1\14\33\14\22\14\4\0\14\14\16\0\5\14\7\0\1\14\1\0"+
+ "\1\14\21\0\160\22\1\14\1\14\1\14\1\14\1\14\1\0\1\14"+
+ "\1\14\2\0\1\14\3\14\10\0\1\14\1\0\3\14\1\0\1\14"+
+ "\1\0\2\14\1\14\21\14\1\0\11\14\43\14\1\14\2\14\3\14"+
+ "\3\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
- "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\5\14"+
- "\1\14\1\14\1\0\1\14\1\14\2\14\1\14\4\0\60\14\60\14"+
+ "\1\14\1\14\1\14\1\14\5\14\1\14\1\14\1\0\1\14\1\14"+
+ "\2\14\2\14\63\14\60\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\0\5\22"+
+ "\2\0\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
- "\1\14\1\14\1\14\1\14\1\0\4\22\3\0\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\2\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\2\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
- "\1\14\2\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
- "\1\14\1\14\1\14\1\14\1\14\1\0\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
- "\1\14\1\14\1\14\1\14\2\0\1\14\1\14\6\0\1\14\1\14"+
- "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
- "\1\14\1\14\1\14\1\14\41\0\46\14\2\0\1\14\7\0\47\14"+
- "\11\0\21\22\1\0\27\22\1\0\3\22\1\0\1\22\1\0\2\22"+
- "\1\0\1\22\13\0\33\14\5\0\3\14\35\0\6\22\13\0\32\14"+
- "\5\0\1\14\12\14\16\22\7\0\12\22\4\0\2\14\1\22\143\14"+
- "\1\0\1\14\7\22\2\0\6\22\2\14\2\22\1\0\4\22\2\14"+
- "\12\22\3\14\2\0\1\14\20\0\1\14\1\22\36\14\33\22\2\0"+
- "\3\14\60\0\46\14\13\22\1\14\u014f\0\2\22\1\22\66\14\2\0"+
- "\1\22\1\14\3\22\10\22\4\22\1\22\2\0\1\14\4\22\3\0"+
- "\12\14\2\22\2\0\12\22\21\0\1\22\2\22\1\0\10\14\2\0"+
- "\2\14\2\0\26\14\1\0\7\14\1\0\1\14\3\0\4\14\2\0"+
- "\1\22\1\14\3\22\4\22\2\0\2\22\2\0\2\22\1\22\11\0"+
- "\1\22\4\0\2\14\1\0\3\14\2\22\2\0\12\22\2\14\17\0"+
- "\2\22\1\22\1\0\6\14\4\0\2\14\2\0\26\14\1\0\7\14"+
- "\1\0\2\14\1\0\2\14\1\0\2\14\2\0\1\22\1\0\3\22"+
- "\2\22\4\0\2\22\2\0\3\22\13\0\4\14\1\0\1\14\7\0"+
- "\12\22\2\22\3\14\14\0\2\22\1\22\1\0\11\14\1\0\3\14"+
- "\1\0\26\14\1\0\7\14\1\0\2\14\1\0\5\14\2\0\1\22"+
- "\1\14\3\22\5\22\1\0\2\22\1\22\1\0\2\22\1\22\2\0"+
- "\1\14\17\0\2\14\2\22\2\0\12\22\21\0\1\22\2\22\1\0"+
- "\10\14\2\0\2\14\2\0\26\14\1\0\7\14\1\0\2\14\1\0"+
- "\5\14\2\0\1\22\1\14\1\22\1\22\1\22\3\22\3\0\2\22"+
- "\2\0\2\22\1\22\10\0\1\22\1\22\4\0\2\14\1\0\3\14"+
- "\4\0\12\22\1\0\1\14\20\0\1\22\1\14\1\0\6\14\3\0"+
- "\3\14\1\0\4\14\3\0\2\14\1\0\1\14\1\0\2\14\3\0"+
- "\2\14\3\0\3\14\3\0\10\14\1\0\3\14\4\0\2\22\1\22"+
- "\2\22\3\0\3\22\1\0\3\22\1\22\11\0\1\22\17\0\11\22"+
- "\21\0\3\22\1\0\10\14\1\0\3\14\1\0\27\14\1\0\12\14"+
- "\1\0\5\14\4\0\3\22\4\22\1\0\3\22\1\0\4\22\7\0"+
- "\2\22\11\0\2\14\4\0\12\22\22\0\2\22\1\0\10\14\1\0"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\11\0\46\14\2\0"+
+ "\1\14\7\0\47\14\11\0\55\22\1\0\1\22\1\0\2\22\1\0"+
+ "\2\22\1\0\1\22\10\0\33\14\5\0\3\14\35\0\13\22\5\0"+
+ "\40\14\1\14\12\14\25\22\12\22\4\0\2\14\1\22\143\14\1\0"+
+ "\1\14\7\22\2\0\6\22\2\14\2\22\1\0\4\22\2\14\12\22"+
+ "\3\14\2\0\1\14\20\0\1\14\1\22\36\14\33\22\2\0\131\14"+
+ "\13\22\1\14\16\0\12\22\41\14\11\22\2\14\4\0\1\14\5\0"+
+ "\26\14\4\22\1\14\11\22\1\14\3\22\1\14\5\22\22\0\31\14"+
+ "\3\22\244\0\3\22\1\22\66\14\1\22\1\22\1\22\1\14\3\22"+
+ "\10\22\4\22\1\22\2\22\1\14\7\22\12\14\2\22\2\0\12\22"+
+ "\1\0\1\14\6\14\1\0\7\14\1\0\1\22\2\22\1\0\10\14"+
+ "\2\0\2\14\2\0\26\14\1\0\7\14\1\0\1\14\3\0\4\14"+
+ "\2\0\1\22\1\14\3\22\4\22\2\0\2\22\2\0\2\22\1\22"+
+ "\1\14\10\0\1\22\4\0\2\14\1\0\3\14\2\22\2\0\12\22"+
+ "\2\14\17\0\2\22\1\22\1\0\6\14\4\0\2\14\2\0\26\14"+
+ "\1\0\7\14\1\0\2\14\1\0\2\14\1\0\2\14\2\0\1\22"+
+ "\1\0\3\22\2\22\4\0\2\22\2\0\3\22\3\0\1\22\7\0"+
+ "\4\14\1\0\1\14\7\0\12\22\2\22\3\14\1\22\13\0\2\22"+
+ "\1\22\1\0\11\14\1\0\3\14\1\0\26\14\1\0\7\14\1\0"+
+ "\2\14\1\0\5\14\2\0\1\22\1\14\3\22\5\22\1\0\2\22"+
+ "\1\22\1\0\2\22\1\22\2\0\1\14\17\0\2\14\2\22\2\0"+
+ "\12\22\21\0\1\22\2\22\1\0\10\14\2\0\2\14\2\0\26\14"+
+ "\1\0\7\14\1\0\2\14\1\0\5\14\2\0\1\22\1\14\1\22"+
+ "\1\22\1\22\4\22\2\0\2\22\2\0\2\22\1\22\10\0\1\22"+
+ "\1\22\4\0\2\14\1\0\3\14\2\22\2\0\12\22\1\0\1\14"+
+ "\20\0\1\22\1\14\1\0\6\14\3\0\3\14\1\0\4\14\3\0"+
+ "\2\14\1\0\1\14\1\0\2\14\3\0\2\14\3\0\3\14\3\0"+
+ "\14\14\4\0\2\22\1\22\2\22\3\0\3\22\1\0\3\22\1\22"+
+ "\2\0\1\14\6\0\1\22\16\0\12\22\21\0\3\22\1\0\10\14"+
+ "\1\0\3\14\1\0\27\14\1\0\12\14\1\0\5\14\3\0\1\14"+
+ "\3\22\4\22\1\0\3\22\1\0\4\22\7\0\2\22\1\0\2\14"+
+ "\6\0\2\14\2\22\2\0\12\22\22\0\2\22\1\0\10\14\1\0"+
"\3\14\1\0\27\14\1\0\12\14\1\0\5\14\2\0\1\22\1\14"+
"\1\22\1\22\5\22\1\0\1\22\2\22\1\0\2\22\2\22\7\0"+
- "\2\22\7\0\1\14\1\0\2\14\4\0\12\22\22\0\2\22\1\0"+
- "\10\14\1\0\3\14\1\0\27\14\1\0\20\14\4\0\3\22\3\22"+
- "\2\0\3\22\1\0\3\22\1\22\11\0\1\22\10\0\2\14\4\0"+
- "\12\22\22\0\2\22\1\0\22\14\3\0\30\14\1\0\11\14\1\0"+
- "\1\14\2\0\7\14\3\0\1\22\4\0\3\22\3\22\1\0\1\22"+
- "\1\0\10\22\22\0\2\22\15\0\60\14\1\22\2\14\7\22\5\0"+
- "\6\14\1\14\10\22\1\0\12\22\47\0\2\14\1\0\1\14\2\0"+
- "\2\14\1\0\1\14\2\0\1\14\6\0\4\14\1\0\7\14\1\0"+
- "\3\14\1\0\1\14\1\0\1\14\2\0\2\14\1\0\4\14\1\22"+
- "\2\14\6\22\1\0\2\22\1\14\2\0\5\14\1\0\1\14\1\0"+
- "\6\22\2\0\12\22\2\0\2\14\42\0\1\14\27\0\2\22\6\0"+
- "\12\22\13\0\1\22\1\0\1\22\1\0\1\22\4\0\2\22\10\14"+
- "\1\0\42\14\6\0\16\22\1\22\5\22\1\0\2\22\4\14\4\0"+
- "\10\22\1\0\44\22\11\0\1\22\71\0\42\14\1\0\5\14\1\0"+
- "\2\14\1\0\1\22\4\22\1\22\1\22\3\0\2\22\1\22\1\22"+
- "\6\0\12\22\6\0\6\14\2\22\2\22\106\0\46\14\12\0\51\14"+
- "\7\0\132\14\5\0\104\14\5\0\122\14\6\0\7\14\1\0\77\14"+
- "\1\0\1\14\1\0\4\14\2\0\7\14\1\0\1\14\1\0\4\14"+
- "\2\0\47\14\1\0\1\14\1\0\4\14\2\0\37\14\1\0\1\14"+
- "\1\0\4\14\2\0\7\14\1\0\1\14\1\0\4\14\2\0\7\14"+
- "\1\0\7\14\1\0\27\14\1\0\37\14\1\0\1\14\1\0\4\14"+
- "\2\0\7\14\1\0\47\14\1\0\23\14\16\0\11\22\56\0\125\14"+
- "\14\0\u026c\14\2\0\10\14\12\0\32\14\5\0\113\14\3\0\3\14"+
- "\17\0\15\14\1\0\4\14\3\22\13\0\22\14\3\22\13\0\22\14"+
- "\2\22\14\0\15\14\1\0\3\14\1\0\2\22\14\0\64\14\2\0"+
- "\1\22\7\22\10\22\1\22\2\22\13\22\3\0\1\14\4\0\1\14"+
- "\1\22\2\0\12\22\41\0\3\22\2\0\12\22\6\0\43\14\1\14"+
- "\64\14\10\0\51\14\1\22\126\0\35\14\3\0\3\22\4\22\2\22"+
- "\3\22\4\0\2\22\1\22\6\22\3\22\12\0\12\22\36\14\2\0"+
- "\5\14\u038b\0\54\14\66\14\12\14\224\0\1\14\1\14\1\14\1\14"+
+ "\2\22\7\0\1\14\1\0\2\14\2\22\2\0\12\22\1\0\2\14"+
+ "\17\0\2\22\1\0\10\14\1\0\3\14\1\0\51\14\2\0\1\14"+
+ "\3\22\4\22\1\0\3\22\1\0\3\22\1\22\1\14\10\0\1\22"+
+ "\10\0\2\14\2\22\2\0\12\22\12\0\6\14\2\0\2\22\1\0"+
+ "\22\14\3\0\30\14\1\0\11\14\1\0\1\14\2\0\7\14\3\0"+
+ "\1\22\4\0\3\22\3\22\1\0\1\22\1\0\10\22\22\0\2\22"+
+ "\15\0\60\14\1\22\2\14\7\22\5\0\6\14\1\14\10\22\1\0"+
+ "\12\22\47\0\2\14\1\0\1\14\2\0\2\14\1\0\1\14\2\0"+
+ "\1\14\6\0\4\14\1\0\7\14\1\0\3\14\1\0\1\14\1\0"+
+ "\1\14\2\0\2\14\1\0\4\14\1\22\2\14\6\22\1\0\2\22"+
+ "\1\14\2\0\5\14\1\0\1\14\1\0\6\22\2\0\12\22\2\0"+
+ "\2\14\42\0\1\14\27\0\2\22\6\0\12\22\13\0\1\22\1\0"+
+ "\1\22\1\0\1\22\4\0\2\22\10\14\1\0\44\14\4\0\16\22"+
+ "\1\22\5\22\1\0\2\22\5\14\13\22\1\0\44\22\11\0\1\22"+
+ "\71\0\53\14\2\22\4\22\1\22\6\22\1\22\2\22\2\22\2\22"+
+ "\1\14\12\22\6\0\6\14\2\22\2\22\4\14\3\22\1\14\3\22"+
+ "\2\14\7\22\3\14\4\22\15\14\1\22\2\22\2\22\6\22\1\22"+
+ "\1\14\1\22\12\22\3\22\1\22\2\0\46\14\12\0\53\14\1\0"+
+ "\1\14\3\0\u0149\14\1\0\4\14\2\0\7\14\1\0\1\14\1\0"+
+ "\4\14\2\0\51\14\1\0\4\14\2\0\41\14\1\0\4\14\2\0"+
+ "\7\14\1\0\1\14\1\0\4\14\2\0\17\14\1\0\71\14\1\0"+
+ "\4\14\2\0\103\14\2\0\3\22\40\0\20\14\20\0\125\14\14\0"+
+ "\u026c\14\2\0\21\14\1\0\32\14\5\0\113\14\3\0\3\14\17\0"+
+ "\15\14\1\0\4\14\3\22\13\0\22\14\3\22\13\0\22\14\2\22"+
+ "\14\0\15\14\1\0\3\14\1\0\2\22\14\0\64\14\2\0\1\22"+
+ "\7\22\10\22\1\22\2\22\13\22\3\0\1\14\4\0\1\14\1\22"+
+ "\2\0\12\22\41\0\3\22\2\0\12\22\6\0\43\14\1\14\64\14"+
+ "\10\0\51\14\1\22\1\14\5\0\106\14\12\0\35\14\3\0\3\22"+
+ "\4\22\2\22\3\22\4\0\2\22\1\22\6\22\3\22\12\0\12\22"+
+ "\36\14\2\0\5\14\13\0\54\14\4\0\21\22\7\14\2\22\6\0"+
+ "\12\22\46\0\27\14\2\22\3\22\4\0\65\14\1\22\1\22\1\22"+
+ "\7\22\1\0\1\22\1\22\1\22\2\22\10\22\6\22\12\22\2\0"+
+ "\1\22\12\22\6\0\12\22\15\0\1\14\130\0\4\22\1\22\57\14"+
+ "\1\22\1\22\5\22\1\22\1\22\5\22\1\22\2\22\7\14\4\0"+
+ "\12\22\21\0\11\22\14\0\2\22\1\22\36\14\1\22\4\22\2\22"+
+ "\2\22\1\22\3\0\2\14\12\22\6\0\46\14\1\22\1\22\2\22"+
+ "\3\22\1\22\1\22\3\22\2\22\14\0\44\14\10\22\10\22\2\22"+
+ "\2\22\10\0\12\22\3\0\3\14\12\22\36\14\6\14\122\0\3\22"+
+ "\1\0\15\22\1\22\7\22\4\14\1\22\4\14\1\22\15\0\54\14"+
+ "\66\14\26\14\1\14\42\14\45\14\47\22\25\0\4\22\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
@@ -174,7 +191,7 @@ class _PythonLexer implements FlexLexer {
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
- "\1\14\1\14\1\14\1\14\1\14\7\14\4\0\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\11\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
@@ -183,28 +200,77 @@ class _PythonLexer implements FlexLexer {
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
"\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
- "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\6\0\10\14\10\14"+
- "\6\14\2\0\6\14\2\0\10\14\10\14\10\14\10\14\6\14\2\0"+
- "\6\14\2\0\10\14\1\0\1\14\1\0\1\14\1\0\1\14\1\0"+
- "\1\14\10\14\10\14\16\14\2\0\10\14\10\14\10\14\10\14\10\14"+
- "\10\14\5\14\1\0\2\14\4\14\1\14\1\0\1\14\3\0\3\14"+
- "\1\0\2\14\4\14\1\14\3\0\4\14\2\0\2\14\4\14\4\0"+
- "\10\14\5\14\5\0\3\14\1\0\2\14\4\14\1\14\102\0\2\22"+
- "\23\0\1\22\34\0\1\14\15\0\1\14\120\0\15\22\4\0\1\22"+
- "\3\0\6\22\27\0\1\14\4\0\1\14\2\0\1\14\3\14\2\14"+
- "\3\14\1\14\1\0\1\14\3\0\5\14\6\0\1\14\1\0\1\14"+
- "\1\0\1\14\1\0\4\14\1\0\1\14\2\14\1\0\1\14\1\14"+
- "\4\14\1\14\3\0\1\14\2\14\5\0\1\14\4\14\26\0\44\14"+
- "\u0e81\0\1\14\1\14\1\14\31\0\11\14\6\22\1\0\5\14\2\0"+
- "\3\14\1\14\1\14\4\0\126\14\2\0\2\22\2\0\2\14\1\14"+
- "\1\0\132\14\1\22\3\14\1\14\5\0\50\14\4\0\136\14\21\0"+
- "\30\14\70\0\20\14\u0200\0\u19b6\14\112\0\u51a6\14\132\0\u048d\14\u0773\0"+
- "\u2ba4\14\u215c\0\u012e\14\2\0\73\14\225\0\7\14\14\0\5\14\5\0"+
- "\1\14\1\22\12\14\1\0\15\14\1\0\5\14\1\0\1\14\1\0"+
- "\2\14\1\0\2\14\1\0\154\14\41\0\u016b\14\22\0\100\14\2\0"+
- "\66\14\50\0\14\14\4\0\20\22\20\0\4\22\17\0\2\22\30\0"+
- "\3\22\40\0\5\14\1\0\207\14\23\0\12\22\7\0\32\14\4\0"+
- "\1\22\1\0\32\14\12\0\1\22\12\14\1\14\55\14\2\14\37\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\11\14\10\14\6\14\2\0\6\14"+
+ "\2\0\10\14\10\14\10\14\10\14\6\14\2\0\6\14\2\0\10\14"+
+ "\1\0\1\14\1\0\1\14\1\0\1\14\1\0\1\14\10\14\10\14"+
+ "\16\14\2\0\10\14\10\14\10\14\10\14\10\14\10\14\5\14\1\0"+
+ "\2\14\4\14\1\14\1\0\1\14\3\0\3\14\1\0\2\14\4\14"+
+ "\1\14\3\0\4\14\2\0\2\14\4\14\4\0\10\14\5\14\5\0"+
+ "\3\14\1\0\2\14\4\14\1\14\102\0\2\22\23\0\1\22\34\0"+
+ "\1\14\15\0\1\14\20\0\15\14\63\0\15\22\4\0\1\22\3\0"+
+ "\14\22\21\0\1\14\4\0\1\14\2\0\1\14\3\14\2\14\3\14"+
+ "\1\14\1\0\1\14\3\0\5\14\6\0\1\14\1\0\1\14\1\0"+
+ "\1\14\1\0\4\14\1\0\1\14\4\14\1\14\4\14\1\14\2\0"+
+ "\2\14\2\14\5\0\1\14\4\14\4\0\1\14\21\0\43\14\1\14"+
+ "\1\14\4\14\u0a77\0\57\14\1\0\57\14\1\0\1\14\1\14\3\14"+
+ "\2\14\1\14\1\14\1\14\1\14\1\14\1\14\4\14\1\14\1\14"+
+ "\2\14\1\14\7\14\1\14\3\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\2\14\6\0\1\14\1\14\1\14\1\14\3\22"+
+ "\16\0\46\14\12\0\66\14\11\0\1\14\17\0\1\22\27\14\11\0"+
+ "\7\14\1\0\7\14\1\0\7\14\1\0\7\14\1\0\7\14\1\0"+
+ "\7\14\1\0\7\14\1\0\7\14\1\0\40\22\57\0\1\14\u01d5\0"+
+ "\1\14\1\14\1\14\31\0\11\14\6\22\1\0\5\14\2\0\3\14"+
+ "\1\14\1\14\4\0\126\14\2\0\2\22\2\0\2\14\1\14\1\0"+
+ "\132\14\1\0\3\14\1\14\5\0\51\14\3\0\136\14\21\0\33\14"+
+ "\65\0\20\14\u0200\0\u19b6\14\112\0\u51cc\14\64\0\25\14\1\14\u0477\14"+
+ "\103\0\50\14\6\14\2\0\u010c\14\1\14\3\0\20\14\12\22\2\14"+
+ "\24\0\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\22\14\0"+
+ "\2\22\1\0\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\10\0\106\14\12\14"+
+ "\2\22\45\0\11\14\2\0\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\3\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14\1\14"+
+ "\1\14\10\14\1\14\1\14\1\14\1\14\2\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\1\14\2\0\1\14\1\14"+
+ "\1\14\1\14\1\0\1\14\1\14\16\0\1\14\1\14\1\14\1\14"+
+ "\1\14\1\14\1\14\1\14\1\14\1\14\120\0\1\14\7\14\1\22"+
+ "\3\14\1\22\4\14\1\22\27\14\2\22\2\22\1\22\30\0\64\14"+
+ "\14\0\2\22\62\14\20\22\1\22\13\0\12\22\6\0\22\22\6\14"+
+ "\3\0\1\14\4\0\12\22\34\14\10\22\2\0\27\14\13\22\2\22"+
+ "\14\0\35\14\3\0\3\22\1\22\57\14\1\22\2\22\4\22\2\22"+
+ "\1\22\4\22\16\0\1\14\12\22\46\0\51\14\6\22\2\22\2\22"+
+ "\2\22\2\22\11\0\3\14\1\22\10\14\1\22\1\22\2\0\12\22"+
+ "\6\0\20\14\1\14\6\14\3\0\1\14\1\22\4\0\60\14\1\22"+
+ "\1\14\3\22\2\14\2\22\5\14\2\22\1\14\1\22\1\14\30\0"+
+ "\2\14\1\14\43\0\6\14\2\0\6\14\2\0\6\14\11\0\7\14"+
+ "\1\0\7\14\221\0\43\14\2\22\1\22\2\22\1\22\2\22\1\0"+
+ "\1\22\1\22\2\0\12\22\6\0\u2ba4\14\14\0\27\14\4\0\61\14"+
+ "\u2104\0\u012e\14\2\0\76\14\2\0\152\14\46\0\7\14\14\0\5\14"+
+ "\5\0\1\14\1\22\12\14\1\0\15\14\1\0\5\14\1\0\1\14"+
+ "\1\0\2\14\1\0\2\14\1\0\154\14\41\0\u016b\14\22\0\100\14"+
+ "\2\0\66\14\50\0\14\14\4\0\20\22\20\0\7\22\14\0\2\22"+
+ "\30\0\3\22\40\0\5\14\1\0\207\14\23\0\12\22\7\0\32\14"+
+ "\4\0\1\22\1\0\32\14\13\0\12\14\1\14\55\14\2\14\37\14"+
"\3\0\6\14\2\0\6\14\2\0\6\14\2\0\3\14\43\0";
/**
@@ -218,29 +284,29 @@ class _PythonLexer implements FlexLexer {
private static final int [] ZZ_ACTION = zzUnpackAction();
private static final String ZZ_ACTION_PACKED_0 =
- "\4\0\1\1\1\2\1\3\1\4\1\5\1\6\1\7"+
- "\2\10\2\11\1\12\2\13\6\14\1\15\1\14\1\16"+
- "\1\14\2\17\12\14\1\20\1\21\1\22\1\23\1\24"+
- "\1\25\1\26\1\27\1\30\1\31\1\12\1\32\1\33"+
- "\1\34\1\35\1\36\1\37\1\40\1\41\1\42\1\43"+
- "\1\44\1\45\1\43\1\0\3\11\1\46\3\11\1\13"+
- "\4\0\1\13\1\47\1\0\1\50\3\14\1\51\5\14"+
- "\1\52\2\14\6\17\7\14\1\53\1\54\1\55\5\14"+
- "\1\56\1\57\1\60\1\61\1\62\1\63\1\64\1\65"+
- "\1\66\1\67\1\70\1\71\1\72\1\73\1\74\1\75"+
- "\1\76\2\0\1\11\1\77\1\100\1\0\1\77\3\13"+
- "\1\47\1\0\1\101\12\14\1\17\2\102\1\103\1\14"+
- "\1\104\1\105\1\106\2\14\1\107\5\14\1\110\1\111"+
- "\1\112\1\113\3\0\2\100\1\0\1\114\1\14\2\0"+
- "\3\14\1\115\1\116\2\14\4\0\4\14\1\117\3\14"+
- "\3\0\2\77\1\0\1\14\2\0\1\120\3\14\1\121"+
- "\1\0\2\102\1\0\2\14\1\122\1\14\1\123\1\14"+
- "\1\124\3\77\1\14\1\125\1\126\1\14\3\102\1\127"+
- "\1\130\1\131\1\132\2\0\1\133\1\14\2\0\2\77"+
- "\1\134\2\102";
+ "\3\0\1\1\2\2\5\3\1\4\1\3\1\5\1\3"+
+ "\1\6\1\3\1\7\1\10\1\7\1\11\1\12\1\13"+
+ "\1\14\12\3\1\15\1\16\1\17\1\20\1\21\1\22"+
+ "\1\23\1\24\1\25\1\26\1\1\1\27\1\30\1\31"+
+ "\1\32\1\33\1\34\1\35\1\36\1\37\1\40\1\41"+
+ "\1\42\2\43\2\44\1\40\1\2\4\0\1\2\1\45"+
+ "\1\0\1\46\3\3\1\47\5\3\1\50\2\3\6\7"+
+ "\7\3\1\51\1\52\1\53\5\3\1\54\1\55\1\56"+
+ "\1\57\1\60\1\61\1\62\1\63\1\64\1\65\1\66"+
+ "\1\67\1\70\1\71\1\72\1\73\1\0\3\44\1\74"+
+ "\3\44\1\75\1\0\3\2\1\45\1\0\1\76\12\3"+
+ "\1\7\2\77\1\100\1\3\1\101\1\102\1\103\2\3"+
+ "\1\104\5\3\1\105\1\106\1\107\1\110\1\0\1\44"+
+ "\1\111\1\112\1\0\1\111\1\113\1\3\2\0\3\3"+
+ "\1\114\1\115\2\3\4\0\4\3\1\116\3\3\3\0"+
+ "\2\112\1\0\1\3\2\0\1\117\3\3\1\120\1\0"+
+ "\2\77\1\0\2\3\1\121\1\3\1\122\1\3\1\123"+
+ "\3\0\2\111\1\0\1\3\1\124\1\125\1\3\3\77"+
+ "\1\126\1\127\1\130\1\131\3\111\1\132\1\3\4\0"+
+ "\1\133\2\77\2\111";
private static int [] zzUnpackAction() {
- int [] result = new int[253];
+ int [] result = new int[251];
int offset = 0;
offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result);
return result;
@@ -265,41 +331,41 @@ class _PythonLexer implements FlexLexer {
private static final int [] ZZ_ROWMAP = zzUnpackRowMap();
private static final String ZZ_ROWMAP_PACKED_0 =
- "\0\0\0\110\0\220\0\330\0\u0120\0\u0168\0\u0120\0\u0120"+
- "\0\u0120\0\u0120\0\u0120\0\u0120\0\u01b0\0\u01f8\0\u0240\0\u0120"+
- "\0\u0288\0\u02d0\0\u0318\0\u0360\0\u03a8\0\u03f0\0\u0438\0\u0480"+
- "\0\u04c8\0\u0510\0\u0558\0\u05a0\0\u05e8\0\u0630\0\u0678\0\u06c0"+
- "\0\u0708\0\u0750\0\u0798\0\u07e0\0\u0828\0\u0870\0\u08b8\0\u0900"+
- "\0\u0948\0\u0990\0\u09d8\0\u0a20\0\u0a68\0\u0ab0\0\u0af8\0\u0b40"+
- "\0\u0b88\0\u0bd0\0\u0c18\0\u0120\0\u0120\0\u0120\0\u0120\0\u0120"+
- "\0\u0120\0\u0120\0\u0120\0\u0120\0\u0c60\0\u0120\0\u0120\0\u0120"+
- "\0\u0ca8\0\u0cf0\0\u0d38\0\u0d80\0\u0120\0\u0dc8\0\u0e10\0\u0e58"+
- "\0\u0ea0\0\u0ee8\0\u0f30\0\u0f78\0\u0fc0\0\u0120\0\u1008\0\u1050"+
- "\0\u0120\0\u1098\0\u10e0\0\u1128\0\u0360\0\u1170\0\u11b8\0\u1200"+
- "\0\u1248\0\u1290\0\u0120\0\u12d8\0\u1320\0\u1368\0\u13b0\0\u13f8"+
- "\0\u1440\0\u1488\0\u14d0\0\u1518\0\u1560\0\u15a8\0\u15f0\0\u1638"+
- "\0\u1680\0\u16c8\0\u0360\0\u0360\0\u0360\0\u1710\0\u1758\0\u17a0"+
- "\0\u17e8\0\u1830\0\u0120\0\u0120\0\u0120\0\u1878\0\u0120\0\u18c0"+
- "\0\u0120\0\u0120\0\u0120\0\u0120\0\u0120\0\u1908\0\u0120\0\u0120"+
- "\0\u1950\0\u0120\0\u0120\0\u0c60\0\u1998\0\u19e0\0\u1a28\0\u0120"+
- "\0\u19e0\0\u1a70\0\u1ab8\0\u1b00\0\u1b48\0\u1b90\0\u1bd8\0\u0360"+
- "\0\u1c20\0\u1c68\0\u1cb0\0\u1cf8\0\u1d40\0\u1d88\0\u1dd0\0\u1e18"+
- "\0\u1e60\0\u1ea8\0\u0120\0\u1ef0\0\u1f38\0\u0360\0\u1f80\0\u0360"+
- "\0\u0360\0\u0360\0\u1fc8\0\u2010\0\u0360\0\u2058\0\u20a0\0\u20e8"+
- "\0\u2130\0\u2178\0\u0120\0\u0120\0\u0120\0\u0120\0\u21c0\0\u2208"+
- "\0\u2250\0\u2298\0\u22e0\0\u2328\0\u0360\0\u2370\0\u23b8\0\u2400"+
- "\0\u2448\0\u2490\0\u24d8\0\u0360\0\u0360\0\u2520\0\u2568\0\u25b0"+
- "\0\u25f8\0\u2640\0\u2688\0\u26d0\0\u2718\0\u2760\0\u27a8\0\u0360"+
- "\0\u27f0\0\u2838\0\u2880\0\u28c8\0\u2910\0\u2958\0\u29a0\0\u29e8"+
- "\0\u2a30\0\u2a78\0\u13b0\0\u14d0\0\u0360\0\u2ac0\0\u2b08\0\u2b50"+
- "\0\u0360\0\u2b98\0\u2be0\0\u2c28\0\u2c70\0\u2cb8\0\u2d00\0\u0360"+
- "\0\u2d48\0\u0360\0\u2d90\0\u0360\0\u19e0\0\u2dd8\0\u2e20\0\u2e68"+
- "\0\u0360\0\u0360\0\u2eb0\0\u0120\0\u2ef8\0\u2f40\0\u0360\0\u0360"+
- "\0\u0360\0\u0360\0\u2f88\0\u2fd0\0\u0360\0\u3018\0\u3060\0\u30a8"+
- "\0\u2958\0\u2a30\0\u0360\0\u2b98\0\u2c70";
+ "\0\0\0\110\0\220\0\330\0\u0120\0\u0168\0\u01b0\0\u01f8"+
+ "\0\u0240\0\u0288\0\u02d0\0\u0318\0\u0360\0\u03a8\0\u03f0\0\u0438"+
+ "\0\u0480\0\u04c8\0\330\0\u0510\0\330\0\330\0\330\0\330"+
+ "\0\u0558\0\u05a0\0\u05e8\0\u0630\0\u0678\0\u06c0\0\u0708\0\u0750"+
+ "\0\u0798\0\u07e0\0\u0828\0\u0870\0\u08b8\0\u0900\0\u0948\0\u0990"+
+ "\0\u09d8\0\u0a20\0\u0a68\0\u0ab0\0\u0af8\0\330\0\330\0\330"+
+ "\0\330\0\330\0\330\0\330\0\330\0\330\0\330\0\330"+
+ "\0\330\0\330\0\u0b40\0\u0b88\0\u0bd0\0\u0c18\0\u0c60\0\u0ca8"+
+ "\0\u0cf0\0\u0d38\0\u0d80\0\330\0\u0dc8\0\u0e10\0\330\0\u0e58"+
+ "\0\u0ea0\0\u0ee8\0\u01f8\0\u0f30\0\u0f78\0\u0fc0\0\u1008\0\u1050"+
+ "\0\330\0\u1098\0\u10e0\0\u1128\0\u1170\0\u11b8\0\u1200\0\u1248"+
+ "\0\u1290\0\u12d8\0\u1320\0\u1368\0\u13b0\0\u13f8\0\u1440\0\u1488"+
+ "\0\u01f8\0\u01f8\0\u01f8\0\u14d0\0\u1518\0\u1560\0\u15a8\0\u15f0"+
+ "\0\330\0\330\0\330\0\u1638\0\330\0\u1680\0\330\0\330"+
+ "\0\330\0\330\0\330\0\u16c8\0\330\0\330\0\u1710\0\330"+
+ "\0\u1758\0\u17a0\0\u17e8\0\u1830\0\330\0\u1878\0\u18c0\0\u1908"+
+ "\0\330\0\u0c18\0\u1950\0\u1998\0\u19e0\0\u1a28\0\u1a70\0\u01f8"+
+ "\0\u1ab8\0\u1b00\0\u1b48\0\u1b90\0\u1bd8\0\u1c20\0\u1c68\0\u1cb0"+
+ "\0\u1cf8\0\u1d40\0\330\0\u1d88\0\u1dd0\0\u01f8\0\u1e18\0\u01f8"+
+ "\0\u01f8\0\u01f8\0\u1e60\0\u1ea8\0\u01f8\0\u1ef0\0\u1f38\0\u1f80"+
+ "\0\u1fc8\0\u2010\0\330\0\330\0\330\0\330\0\u2058\0\u20a0"+
+ "\0\u20e8\0\330\0\u20a0\0\u2130\0\u01f8\0\u2178\0\u21c0\0\u2208"+
+ "\0\u2250\0\u2298\0\u22e0\0\u01f8\0\u01f8\0\u2328\0\u2370\0\u23b8"+
+ "\0\u2400\0\u2448\0\u2490\0\u24d8\0\u2520\0\u2568\0\u25b0\0\u01f8"+
+ "\0\u25f8\0\u2640\0\u2688\0\u26d0\0\u2718\0\u2760\0\u27a8\0\u27f0"+
+ "\0\u2838\0\u2880\0\u1170\0\u1290\0\u01f8\0\u28c8\0\u2910\0\u2958"+
+ "\0\u01f8\0\u29a0\0\u29e8\0\u2a30\0\u2a78\0\u2ac0\0\u2b08\0\u01f8"+
+ "\0\u2b50\0\u01f8\0\u2b98\0\u01f8\0\u2be0\0\u2c28\0\u2c70\0\u2cb8"+
+ "\0\u2d00\0\u2d48\0\u2d90\0\u01f8\0\u01f8\0\u2dd8\0\330\0\u2e20"+
+ "\0\u2e68\0\u01f8\0\u01f8\0\u01f8\0\u01f8\0\u20a0\0\u2eb0\0\u2ef8"+
+ "\0\u01f8\0\u2f40\0\u2f88\0\u2fd0\0\u3018\0\u3060\0\u01f8\0\u29a0"+
+ "\0\u2a78\0\u2c70\0\u2d48";
private static int [] zzUnpackRowMap() {
- int [] result = new int[253];
+ int [] result = new int[251];
int offset = 0;
offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result);
return result;
@@ -322,211 +388,210 @@ class _PythonLexer implements FlexLexer {
private static final int [] ZZ_TRANS = zzUnpackTrans();
private static final String ZZ_TRANS_PACKED_0 =
- "\12\5\1\6\22\5\1\7\1\5\1\10\1\11\1\12"+
- "\1\13\45\5\10\14\1\15\1\14\1\6\5\14\1\15"+
- "\7\14\4\15\1\16\1\7\1\17\1\10\1\11\1\12"+
- "\1\13\4\14\1\15\40\14\1\20\1\21\2\22\1\23"+
- "\1\22\1\24\1\25\1\26\1\27\1\6\1\20\4\24"+
- "\1\30\1\24\1\20\1\31\1\32\1\24\1\33\1\24"+
- "\1\34\3\30\1\35\1\7\1\36\1\10\1\11\1\12"+
- "\1\13\1\37\1\40\1\41\1\24\1\42\1\43\1\24"+
- "\1\44\1\45\1\46\1\24\1\47\1\50\1\24\1\51"+
- "\1\52\1\53\1\54\1\55\1\56\1\57\1\60\1\61"+
- "\1\62\1\63\1\64\1\65\1\66\1\67\1\70\1\71"+
- "\1\72\1\73\1\74\1\75\1\76\1\77\1\20\1\21"+
- "\2\22\1\23\1\22\1\24\1\25\1\26\1\27\1\6"+
- "\1\20\4\24\1\30\1\24\1\20\1\31\1\32\1\24"+
- "\1\33\1\24\1\34\3\30\1\35\1\7\1\36\1\10"+
- "\1\11\1\12\1\13\1\37\1\40\1\41\1\24\1\42"+
- "\1\43\1\24\1\44\1\45\1\46\1\24\1\47\1\50"+
- "\1\24\1\51\1\52\1\53\1\54\1\55\1\56\1\57"+
+ "\1\4\1\5\2\6\1\7\1\6\1\10\1\11\1\12"+
+ "\1\13\1\14\1\4\4\10\1\15\1\10\1\4\1\16"+
+ "\1\17\1\10\1\20\1\10\1\21\3\15\1\22\1\23"+
+ "\1\24\1\25\1\26\1\27\1\30\1\31\1\32\1\33"+
+ "\1\10\1\34\1\35\1\10\1\36\1\37\1\40\1\10"+
+ "\1\41\1\42\1\10\1\43\1\44\1\45\1\46\1\47"+
+ "\1\50\1\51\1\52\1\53\1\54\1\55\1\56\1\57"+
"\1\60\1\61\1\62\1\63\1\64\1\65\1\66\1\67"+
- "\1\70\1\71\1\72\1\73\1\74\1\100\1\76\1\77"+
- "\110\0\13\6\1\0\23\6\1\0\50\6\10\0\1\101"+
- "\7\0\1\101\7\0\4\101\1\16\1\0\1\17\10\0"+
- "\1\101\40\0\13\102\1\0\20\102\1\103\1\104\1\102"+
- "\1\105\50\102\13\106\1\0\21\106\1\107\1\110\1\105"+
- "\50\106\1\0\1\111\1\112\1\111\1\0\1\111\1\113"+
- "\1\114\1\115\1\116\4\0\1\113\1\114\1\115\1\116"+
- "\1\0\1\117\2\120\1\0\1\121\61\0\3\22\1\0"+
- "\1\22\3\0\1\116\7\0\1\116\1\0\1\117\2\120"+
- "\1\0\1\121\61\0\6\24\1\122\2\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\4\24\1\123\2\24"+
- "\1\124\6\24\30\0\11\24\2\0\7\24\1\0\2\24"+
- "\1\0\5\24\7\0\16\24\30\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\4\24\1\125\11\24"+
- "\30\0\7\24\1\126\1\24\2\0\4\24\1\126\2\24"+
- "\1\0\2\24\1\0\1\24\4\126\1\35\1\0\1\36"+
- "\4\0\4\24\1\127\11\24\30\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\1\130\15\24\30\0"+
- "\7\24\1\126\1\24\2\0\4\24\1\126\2\24\1\0"+
- "\2\24\1\0\1\24\4\126\1\35\1\0\1\36\4\0"+
- "\4\24\1\126\11\24\30\0\3\117\1\0\1\117\103\0"+
- "\5\24\1\131\2\24\1\132\2\0\7\24\1\0\2\24"+
- "\1\0\5\24\7\0\16\24\111\0\1\133\26\0\6\24"+
- "\1\134\1\126\1\135\2\0\4\24\1\126\2\24\1\0"+
- "\2\24\1\0\1\24\4\126\1\35\1\0\1\36\4\0"+
- "\4\24\1\126\11\24\27\0\13\136\1\0\20\136\1\137"+
- "\1\140\1\136\1\0\50\136\13\141\1\0\21\141\1\142"+
- "\1\143\1\0\50\141\1\0\11\24\2\0\7\24\1\0"+
- "\2\24\1\0\5\24\7\0\1\24\1\144\1\24\1\145"+
- "\12\24\30\0\6\24\1\146\2\24\2\0\7\24\1\0"+
- "\2\24\1\0\5\24\7\0\16\24\30\0\11\24\2\0"+
- "\7\24\1\0\1\147\1\24\1\0\5\24\7\0\16\24"+
- "\30\0\7\24\1\126\1\24\2\0\4\24\1\126\2\24"+
- "\1\0\1\150\1\24\1\0\1\24\4\126\1\35\1\0"+
- "\1\36\4\0\1\151\3\24\1\126\11\24\30\0\11\24"+
- "\2\0\7\24\1\0\2\24\1\0\5\24\7\0\4\24"+
- "\1\152\11\24\30\0\3\24\1\153\5\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\1\24\1\154\1\24"+
- "\1\155\6\24\1\156\3\24\30\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\1\157\15\24\30\0"+
- "\11\24\2\0\7\24\1\0\2\24\1\0\5\24\7\0"+
- "\7\24\1\160\6\24\30\0\10\24\1\161\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\16\24\30\0\11\24"+
- "\2\0\7\24\1\0\2\24\1\0\5\24\7\0\15\24"+
- "\1\162\111\0\1\163\107\0\1\164\107\0\1\165\1\166"+
- "\106\0\1\167\1\0\1\170\105\0\1\171\107\0\1\172"+
- "\107\0\1\173\107\0\1\174\107\0\1\175\6\0\1\176"+
- "\100\0\1\177\6\0\1\200\1\201\77\0\1\202\64\0"+
- "\1\203\1\204\57\0\1\205\7\0\1\205\7\0\4\205"+
- "\1\16\1\0\1\17\10\0\1\205\40\0\13\102\1\0"+
- "\20\102\1\206\1\104\1\102\1\105\50\102\34\0\1\207"+
- "\1\210\1\0\1\105\2\211\45\0\1\105\110\102\13\106"+
- "\1\0\21\106\1\107\1\206\1\105\160\106\35\0\1\210"+
- "\1\212\1\105\2\211\45\0\1\105\1\0\1\111\1\112"+
- "\1\111\1\0\1\111\3\0\1\116\7\0\1\116\1\0"+
- "\1\117\2\120\1\0\1\121\61\0\3\112\1\0\1\112"+
- "\15\0\1\117\2\120\1\0\1\121\61\0\5\213\2\0"+
- "\1\213\4\0\1\213\2\0\1\213\3\0\2\213\2\0"+
- "\2\213\11\0\1\213\1\0\1\213\43\0\1\214\1\0"+
- "\1\214\1\0\1\214\103\0\1\215\3\0\1\215\103\0"+
- "\3\117\1\0\1\117\16\0\2\120\1\0\1\121\61\0"+
- "\3\216\1\0\1\216\20\0\1\217\32\0\1\217\27\0"+
- "\11\24\2\0\7\24\1\0\2\24\1\0\5\24\7\0"+
- "\4\24\1\220\11\24\30\0\6\24\1\221\2\24\2\0"+
- "\7\24\1\0\2\24\1\0\5\24\7\0\16\24\30\0"+
- "\11\24\2\0\7\24\1\0\2\24\1\0\5\24\7\0"+
- "\1\24\1\222\14\24\30\0\7\24\1\223\1\24\2\0"+
- "\4\24\1\223\2\24\1\0\2\24\1\0\1\24\4\223"+
- "\1\35\1\0\1\36\4\0\4\24\1\223\11\24\30\0"+
- "\7\24\1\223\1\24\2\0\4\24\1\223\2\24\1\0"+
- "\1\224\1\24\1\0\1\24\4\223\1\35\1\0\1\36"+
- "\4\0\4\24\1\223\11\24\30\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\12\24\1\225\3\24"+
- "\30\0\11\24\2\0\7\24\1\0\2\24\1\0\1\24"+
- "\1\226\3\24\7\0\16\24\30\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\3\24\1\227\3\24"+
- "\1\230\6\24\30\0\11\24\2\0\7\24\1\0\2\24"+
- "\1\0\5\24\7\0\1\24\1\231\14\24\30\0\11\24"+
- "\2\0\7\24\1\0\2\24\1\0\5\24\7\0\1\232"+
- "\15\24\27\0\13\136\1\0\20\136\1\233\1\140\1\136"+
- "\1\0\50\136\34\0\1\234\53\0\110\136\13\141\1\0"+
- "\21\141\1\142\1\233\1\0\160\141\36\0\1\235\52\0"+
- "\11\24\2\0\7\24\1\0\2\24\1\0\5\24\7\0"+
- "\2\24\1\236\13\24\30\0\11\24\2\0\7\24\1\0"+
- "\2\24\1\0\5\24\7\0\3\24\1\237\12\24\30\0"+
- "\11\24\2\0\7\24\1\0\2\24\1\0\5\24\7\0"+
- "\5\24\1\240\10\24\30\0\3\24\1\241\4\24\1\242"+
- "\2\0\7\24\1\0\2\24\1\0\5\24\7\0\16\24"+
- "\30\0\11\24\2\0\7\24\1\0\2\24\1\0\5\24"+
- "\7\0\5\24\1\243\10\24\30\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\7\24\1\244\6\24"+
- "\30\0\11\24\2\0\7\24\1\0\2\24\1\0\5\24"+
- "\7\0\11\24\1\245\4\24\30\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\10\24\1\246\5\24"+
- "\30\0\11\24\2\0\7\24\1\0\2\24\1\0\5\24"+
- "\7\0\3\24\1\247\12\24\30\0\11\24\2\0\7\24"+
- "\1\0\1\250\1\24\1\0\5\24\7\0\16\24\30\0"+
- "\6\24\1\251\2\24\2\0\7\24\1\0\2\24\1\0"+
- "\5\24\7\0\16\24\30\0\11\24\2\0\7\24\1\0"+
- "\2\24\1\0\5\24\7\0\7\24\1\252\6\24\111\0"+
- "\1\253\107\0\1\254\107\0\1\255\107\0\1\256\61\0"+
- "\1\257\1\0\1\260\106\0\1\210\1\0\1\105\2\211"+
- "\45\0\1\105\34\207\1\261\1\262\52\207\35\212\1\263"+
- "\1\264\51\212\1\0\5\213\2\0\1\213\1\116\3\0"+
- "\1\213\2\0\1\213\1\116\2\0\2\213\2\0\2\213"+
- "\11\0\1\213\1\0\1\213\43\0\1\214\1\0\1\214"+
- "\1\0\1\214\3\0\1\116\7\0\1\116\67\0\1\215"+
- "\3\0\1\215\3\0\1\116\7\0\1\116\67\0\3\216"+
- "\1\0\1\216\21\0\1\121\61\0\3\216\1\0\1\216"+
- "\103\0\11\24\2\0\7\24\1\0\2\24\1\0\5\24"+
- "\7\0\12\24\1\265\3\24\30\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\1\266\15\24\30\0"+
- "\11\24\2\0\7\24\1\0\2\24\1\0\5\24\1\267"+
- "\1\0\1\270\4\0\16\24\30\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\1\271\15\24\30\0"+
- "\7\24\1\272\1\24\2\0\7\24\1\0\2\24\1\0"+
- "\5\24\7\0\16\24\30\0\11\24\2\0\7\24\1\0"+
- "\1\273\1\24\1\0\5\24\7\0\16\24\30\0\11\24"+
- "\2\0\7\24\1\0\1\274\1\24\1\0\5\24\7\0"+
- "\16\24\30\0\3\24\1\275\5\24\2\0\7\24\1\0"+
- "\2\24\1\0\5\24\7\0\16\24\30\0\11\24\2\0"+
- "\7\24\1\0\2\24\1\0\5\24\7\0\5\24\1\276"+
- "\10\24\30\0\11\24\2\0\7\24\1\0\2\24\1\0"+
- "\5\24\7\0\3\24\1\277\12\24\27\0\34\234\1\300"+
- "\1\301\52\234\35\235\1\302\1\303\51\235\1\0\11\24"+
- "\2\0\7\24\1\0\1\304\1\24\1\0\5\24\7\0"+
- "\16\24\30\0\11\24\2\0\7\24\1\0\2\24\1\0"+
- "\4\24\1\305\7\0\16\24\30\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\3\24\1\306\12\24"+
- "\30\0\6\24\1\307\2\24\2\0\7\24\1\0\2\24"+
- "\1\0\5\24\7\0\16\24\30\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\3\24\1\310\12\24"+
- "\30\0\10\24\1\311\2\0\7\24\1\0\2\24\1\0"+
- "\5\24\7\0\16\24\30\0\7\24\1\312\1\24\2\0"+
- "\7\24\1\0\2\24\1\0\5\24\7\0\16\24\30\0"+
- "\10\24\1\313\2\0\7\24\1\0\2\24\1\0\5\24"+
- "\7\0\16\24\63\0\1\314\111\0\1\315\51\0\34\207"+
- "\1\316\1\317\162\207\145\212\1\320\1\321\51\212\1\0"+
- "\10\24\1\322\2\0\7\24\1\0\2\24\1\0\5\24"+
- "\7\0\16\24\63\0\1\323\111\0\1\324\52\0\11\24"+
- "\2\0\7\24\1\0\2\24\1\0\5\24\7\0\6\24"+
- "\1\325\7\24\30\0\11\24\2\0\7\24\1\0\2\24"+
- "\1\0\5\24\7\0\2\24\1\326\13\24\30\0\11\24"+
- "\2\0\7\24\1\0\2\24\1\0\5\24\7\0\10\24"+
- "\1\327\5\24\30\0\11\24\2\0\7\24\1\0\2\24"+
- "\1\0\5\24\7\0\7\24\1\330\6\24\30\0\11\24"+
- "\2\0\7\24\1\0\2\24\1\0\5\24\7\0\3\24"+
- "\1\331\12\24\27\0\34\234\1\332\1\333\162\234\145\235"+
- "\1\334\1\335\51\235\1\0\11\24\2\0\7\24\1\0"+
- "\2\24\1\0\5\24\7\0\4\24\1\336\11\24\30\0"+
- "\11\24\2\0\7\24\1\0\2\24\1\0\5\24\7\0"+
- "\4\24\1\337\11\24\30\0\11\24\2\0\7\24\1\0"+
- "\1\340\1\24\1\0\5\24\7\0\16\24\30\0\11\24"+
- "\2\0\7\24\1\0\2\24\1\0\5\24\7\0\4\24"+
- "\1\341\11\24\30\0\11\24\2\0\7\24\1\0\2\24"+
- "\1\0\5\24\7\0\2\24\1\342\13\24\30\0\11\24"+
- "\2\0\7\24\1\0\2\24\1\0\5\24\7\0\1\343"+
- "\15\24\30\0\11\24\2\0\7\24\1\0\1\344\1\24"+
- "\1\0\5\24\7\0\16\24\63\0\1\207\111\0\1\212"+
- "\51\0\34\207\1\345\1\317\106\207\1\346\1\317\52\207"+
- "\35\212\1\320\1\347\106\212\1\320\1\345\51\212\1\0"+
- "\10\24\1\350\2\0\7\24\1\0\2\24\1\0\5\24"+
- "\7\0\16\24\30\0\11\24\2\0\7\24\1\0\2\24"+
- "\1\0\5\24\7\0\1\351\15\24\30\0\11\24\2\0"+
- "\7\24\1\0\2\24\1\0\5\24\7\0\5\24\1\352"+
- "\10\24\30\0\11\24\2\0\7\24\1\0\2\24\1\0"+
- "\5\24\7\0\1\24\1\353\14\24\27\0\34\234\1\354"+
- "\1\333\106\234\1\355\1\333\52\234\35\235\1\334\1\356"+
- "\106\235\1\334\1\354\51\235\1\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\5\24\1\357\10\24"+
- "\30\0\11\24\2\0\7\24\1\0\2\24\1\0\5\24"+
- "\7\0\1\24\1\360\14\24\30\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\5\24\1\361\10\24"+
- "\30\0\10\24\1\362\2\0\7\24\1\0\2\24\1\0"+
- "\5\24\7\0\16\24\27\0\34\207\1\363\1\317\52\207"+
- "\35\212\1\320\1\364\51\212\1\0\11\24\2\0\7\24"+
- "\1\0\2\24\1\0\5\24\7\0\11\24\1\365\4\24"+
- "\30\0\11\24\2\0\7\24\1\0\2\24\1\0\4\24"+
- "\1\366\7\0\16\24\27\0\34\234\1\367\1\333\52\234"+
- "\35\235\1\334\1\370\51\235\34\207\1\371\1\317\52\207"+
- "\35\212\1\320\1\372\51\212\1\0\11\24\2\0\7\24"+
- "\1\0\1\373\1\24\1\0\5\24\7\0\16\24\27\0"+
- "\34\234\1\374\1\333\52\234\35\235\1\334\1\375\51\235";
+ "\1\70\1\71\10\72\1\73\1\72\1\14\5\72\1\73"+
+ "\7\72\4\73\1\74\1\23\1\75\1\25\1\26\1\27"+
+ "\1\30\4\72\1\73\40\72\1\4\1\5\2\6\1\7"+
+ "\1\6\1\10\1\11\1\12\1\13\1\14\1\4\4\10"+
+ "\1\15\1\10\1\4\1\16\1\17\1\10\1\20\1\10"+
+ "\1\21\3\15\1\22\1\23\1\24\1\25\1\26\1\27"+
+ "\1\30\1\31\1\32\1\33\1\10\1\34\1\35\1\10"+
+ "\1\36\1\37\1\40\1\10\1\41\1\42\1\10\1\43"+
+ "\1\44\1\45\1\46\1\47\1\50\1\51\1\52\1\53"+
+ "\1\54\1\55\1\56\1\57\1\60\1\61\1\62\1\63"+
+ "\1\64\1\65\1\66\1\76\1\70\1\71\111\0\1\77"+
+ "\1\100\1\77\1\0\1\77\1\101\1\102\1\103\1\104"+
+ "\4\0\1\101\1\102\1\103\1\104\1\0\1\105\2\106"+
+ "\1\0\1\107\61\0\3\6\1\0\1\6\3\0\1\104"+
+ "\7\0\1\104\1\0\1\105\2\106\1\0\1\107\61\0"+
+ "\6\10\1\110\2\10\2\0\7\10\1\0\2\10\1\0"+
+ "\5\10\7\0\4\10\1\111\2\10\1\112\6\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\16\10\30\0\11\10\2\0\7\10\1\0\2\10\1\0"+
+ "\5\10\7\0\4\10\1\113\11\10\30\0\7\10\1\114"+
+ "\1\10\2\0\4\10\1\114\2\10\1\0\2\10\1\0"+
+ "\1\10\4\114\1\22\1\0\1\24\4\0\4\10\1\115"+
+ "\11\10\30\0\11\10\2\0\7\10\1\0\2\10\1\0"+
+ "\5\10\7\0\1\116\15\10\27\0\13\14\1\0\23\14"+
+ "\1\0\50\14\1\0\7\10\1\114\1\10\2\0\4\10"+
+ "\1\114\2\10\1\0\2\10\1\0\1\10\4\114\1\22"+
+ "\1\0\1\24\4\0\4\10\1\114\11\10\30\0\3\105"+
+ "\1\0\1\105\103\0\5\10\1\117\2\10\1\120\2\0"+
+ "\7\10\1\0\2\10\1\0\5\10\7\0\16\10\111\0"+
+ "\1\121\26\0\6\10\1\122\1\114\1\123\2\0\4\10"+
+ "\1\114\2\10\1\0\2\10\1\0\1\10\4\114\1\22"+
+ "\1\0\1\24\4\0\4\10\1\114\11\10\27\0\13\124"+
+ "\1\0\20\124\1\125\1\126\1\124\1\0\50\124\13\127"+
+ "\1\0\21\127\1\130\1\131\1\0\50\127\1\0\11\10"+
+ "\2\0\7\10\1\0\2\10\1\0\5\10\7\0\1\10"+
+ "\1\132\1\10\1\133\12\10\30\0\6\10\1\134\2\10"+
+ "\2\0\7\10\1\0\2\10\1\0\5\10\7\0\16\10"+
+ "\30\0\11\10\2\0\7\10\1\0\1\135\1\10\1\0"+
+ "\5\10\7\0\16\10\30\0\7\10\1\114\1\10\2\0"+
+ "\4\10\1\114\2\10\1\0\1\136\1\10\1\0\1\10"+
+ "\4\114\1\22\1\0\1\24\4\0\1\137\3\10\1\114"+
+ "\11\10\30\0\11\10\2\0\7\10\1\0\2\10\1\0"+
+ "\5\10\7\0\4\10\1\140\11\10\30\0\3\10\1\141"+
+ "\5\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\1\10\1\142\1\10\1\143\6\10\1\144\3\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\1\145\15\10\30\0\11\10\2\0\7\10\1\0\2\10"+
+ "\1\0\5\10\7\0\7\10\1\146\6\10\30\0\10\10"+
+ "\1\147\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\16\10\30\0\11\10\2\0\7\10\1\0\2\10\1\0"+
+ "\5\10\7\0\15\10\1\150\111\0\1\151\107\0\1\152"+
+ "\107\0\1\153\1\154\106\0\1\155\1\0\1\156\105\0"+
+ "\1\157\107\0\1\160\107\0\1\161\107\0\1\162\107\0"+
+ "\1\163\6\0\1\164\100\0\1\165\6\0\1\166\1\167"+
+ "\77\0\1\170\35\0\1\171\7\0\1\171\7\0\4\171"+
+ "\1\74\1\0\1\75\10\0\1\171\40\0\13\172\1\0"+
+ "\20\172\1\173\1\174\1\172\1\175\50\172\13\176\1\0"+
+ "\21\176\1\177\1\200\1\175\50\176\37\0\1\201\1\202"+
+ "\50\0\1\77\1\100\1\77\1\0\1\77\3\0\1\104"+
+ "\7\0\1\104\1\0\1\105\2\106\1\0\1\107\61\0"+
+ "\3\100\1\0\1\100\15\0\1\105\2\106\1\0\1\107"+
+ "\61\0\5\203\2\0\1\203\4\0\1\203\2\0\1\203"+
+ "\3\0\2\203\2\0\2\203\11\0\1\203\1\0\1\203"+
+ "\43\0\1\204\1\0\1\204\1\0\1\204\103\0\1\205"+
+ "\3\0\1\205\103\0\3\105\1\0\1\105\16\0\2\106"+
+ "\1\0\1\107\61\0\3\206\1\0\1\206\20\0\1\207"+
+ "\32\0\1\207\27\0\11\10\2\0\7\10\1\0\2\10"+
+ "\1\0\5\10\7\0\4\10\1\210\11\10\30\0\6\10"+
+ "\1\211\2\10\2\0\7\10\1\0\2\10\1\0\5\10"+
+ "\7\0\16\10\30\0\11\10\2\0\7\10\1\0\2\10"+
+ "\1\0\5\10\7\0\1\10\1\212\14\10\30\0\7\10"+
+ "\1\213\1\10\2\0\4\10\1\213\2\10\1\0\2\10"+
+ "\1\0\1\10\4\213\1\22\1\0\1\24\4\0\4\10"+
+ "\1\213\11\10\30\0\7\10\1\213\1\10\2\0\4\10"+
+ "\1\213\2\10\1\0\1\214\1\10\1\0\1\10\4\213"+
+ "\1\22\1\0\1\24\4\0\4\10\1\213\11\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\12\10\1\215\3\10\30\0\11\10\2\0\7\10\1\0"+
+ "\2\10\1\0\1\10\1\216\3\10\7\0\16\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\3\10\1\217\3\10\1\220\6\10\30\0\11\10\2\0"+
+ "\7\10\1\0\2\10\1\0\5\10\7\0\1\10\1\221"+
+ "\14\10\30\0\11\10\2\0\7\10\1\0\2\10\1\0"+
+ "\5\10\7\0\1\222\15\10\27\0\13\124\1\0\20\124"+
+ "\1\223\1\126\1\124\1\0\50\124\34\0\1\224\53\0"+
+ "\110\124\13\127\1\0\21\127\1\130\1\223\1\0\160\127"+
+ "\36\0\1\225\52\0\11\10\2\0\7\10\1\0\2\10"+
+ "\1\0\5\10\7\0\2\10\1\226\13\10\30\0\11\10"+
+ "\2\0\7\10\1\0\2\10\1\0\5\10\7\0\3\10"+
+ "\1\227\12\10\30\0\11\10\2\0\7\10\1\0\2\10"+
+ "\1\0\5\10\7\0\5\10\1\230\10\10\30\0\3\10"+
+ "\1\231\4\10\1\232\2\0\7\10\1\0\2\10\1\0"+
+ "\5\10\7\0\16\10\30\0\11\10\2\0\7\10\1\0"+
+ "\2\10\1\0\5\10\7\0\5\10\1\233\10\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\7\10\1\234\6\10\30\0\11\10\2\0\7\10\1\0"+
+ "\2\10\1\0\5\10\7\0\11\10\1\235\4\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\10\10\1\236\5\10\30\0\11\10\2\0\7\10\1\0"+
+ "\2\10\1\0\5\10\7\0\3\10\1\237\12\10\30\0"+
+ "\11\10\2\0\7\10\1\0\1\240\1\10\1\0\5\10"+
+ "\7\0\16\10\30\0\6\10\1\241\2\10\2\0\7\10"+
+ "\1\0\2\10\1\0\5\10\7\0\16\10\30\0\11\10"+
+ "\2\0\7\10\1\0\2\10\1\0\5\10\7\0\7\10"+
+ "\1\242\6\10\111\0\1\243\107\0\1\244\107\0\1\245"+
+ "\107\0\1\246\35\0\1\247\7\0\1\247\7\0\4\247"+
+ "\1\74\1\0\1\75\10\0\1\247\40\0\13\172\1\0"+
+ "\20\172\1\250\1\174\1\172\1\175\50\172\34\0\1\251"+
+ "\1\252\1\0\1\175\2\253\45\0\1\175\110\172\13\176"+
+ "\1\0\21\176\1\177\1\250\1\175\160\176\35\0\1\252"+
+ "\1\254\1\175\2\253\45\0\1\175\1\0\5\203\2\0"+
+ "\1\203\1\104\3\0\1\203\2\0\1\203\1\104\2\0"+
+ "\2\203\2\0\2\203\11\0\1\203\1\0\1\203\43\0"+
+ "\1\204\1\0\1\204\1\0\1\204\3\0\1\104\7\0"+
+ "\1\104\67\0\1\205\3\0\1\205\3\0\1\104\7\0"+
+ "\1\104\67\0\3\206\1\0\1\206\21\0\1\107\61\0"+
+ "\3\206\1\0\1\206\103\0\11\10\2\0\7\10\1\0"+
+ "\2\10\1\0\5\10\7\0\12\10\1\255\3\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\1\256\15\10\30\0\11\10\2\0\7\10\1\0\2\10"+
+ "\1\0\5\10\1\257\1\0\1\260\4\0\16\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\1\261\15\10\30\0\7\10\1\262\1\10\2\0\7\10"+
+ "\1\0\2\10\1\0\5\10\7\0\16\10\30\0\11\10"+
+ "\2\0\7\10\1\0\1\263\1\10\1\0\5\10\7\0"+
+ "\16\10\30\0\11\10\2\0\7\10\1\0\1\264\1\10"+
+ "\1\0\5\10\7\0\16\10\30\0\3\10\1\265\5\10"+
+ "\2\0\7\10\1\0\2\10\1\0\5\10\7\0\16\10"+
+ "\30\0\11\10\2\0\7\10\1\0\2\10\1\0\5\10"+
+ "\7\0\5\10\1\266\10\10\30\0\11\10\2\0\7\10"+
+ "\1\0\2\10\1\0\5\10\7\0\3\10\1\267\12\10"+
+ "\27\0\34\224\1\270\1\271\52\224\35\225\1\272\1\273"+
+ "\51\225\1\0\11\10\2\0\7\10\1\0\1\274\1\10"+
+ "\1\0\5\10\7\0\16\10\30\0\11\10\2\0\7\10"+
+ "\1\0\2\10\1\0\4\10\1\275\7\0\16\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\3\10\1\276\12\10\30\0\6\10\1\277\2\10\2\0"+
+ "\7\10\1\0\2\10\1\0\5\10\7\0\16\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\3\10\1\300\12\10\30\0\10\10\1\301\2\0\7\10"+
+ "\1\0\2\10\1\0\5\10\7\0\16\10\30\0\7\10"+
+ "\1\302\1\10\2\0\7\10\1\0\2\10\1\0\5\10"+
+ "\7\0\16\10\30\0\10\10\1\303\2\0\7\10\1\0"+
+ "\2\10\1\0\5\10\7\0\16\10\63\0\1\304\1\0"+
+ "\1\305\106\0\1\252\1\0\1\175\2\253\45\0\1\175"+
+ "\34\251\1\306\1\307\52\251\35\254\1\310\1\311\51\254"+
+ "\1\0\10\10\1\312\2\0\7\10\1\0\2\10\1\0"+
+ "\5\10\7\0\16\10\63\0\1\313\111\0\1\314\52\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\6\10\1\315\7\10\30\0\11\10\2\0\7\10\1\0"+
+ "\2\10\1\0\5\10\7\0\2\10\1\316\13\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\10\10\1\317\5\10\30\0\11\10\2\0\7\10\1\0"+
+ "\2\10\1\0\5\10\7\0\7\10\1\320\6\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\3\10\1\321\12\10\27\0\34\224\1\322\1\323\162\224"+
+ "\145\225\1\324\1\325\51\225\1\0\11\10\2\0\7\10"+
+ "\1\0\2\10\1\0\5\10\7\0\4\10\1\326\11\10"+
+ "\30\0\11\10\2\0\7\10\1\0\2\10\1\0\5\10"+
+ "\7\0\4\10\1\327\11\10\30\0\11\10\2\0\7\10"+
+ "\1\0\1\330\1\10\1\0\5\10\7\0\16\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\4\10\1\331\11\10\30\0\11\10\2\0\7\10\1\0"+
+ "\2\10\1\0\5\10\7\0\2\10\1\332\13\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\1\333\15\10\30\0\11\10\2\0\7\10\1\0\1\334"+
+ "\1\10\1\0\5\10\7\0\16\10\63\0\1\335\111\0"+
+ "\1\336\51\0\34\251\1\337\1\340\162\251\145\254\1\341"+
+ "\1\342\51\254\1\0\10\10\1\343\2\0\7\10\1\0"+
+ "\2\10\1\0\5\10\7\0\16\10\30\0\11\10\2\0"+
+ "\7\10\1\0\2\10\1\0\5\10\7\0\1\344\15\10"+
+ "\30\0\11\10\2\0\7\10\1\0\2\10\1\0\5\10"+
+ "\7\0\5\10\1\345\10\10\30\0\11\10\2\0\7\10"+
+ "\1\0\2\10\1\0\5\10\7\0\1\10\1\346\14\10"+
+ "\27\0\34\224\1\347\1\323\106\224\1\350\1\323\52\224"+
+ "\35\225\1\324\1\351\106\225\1\324\1\347\51\225\1\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\5\10\1\352\10\10\30\0\11\10\2\0\7\10\1\0"+
+ "\2\10\1\0\5\10\7\0\1\10\1\353\14\10\30\0"+
+ "\11\10\2\0\7\10\1\0\2\10\1\0\5\10\7\0"+
+ "\5\10\1\354\10\10\30\0\10\10\1\355\2\0\7\10"+
+ "\1\0\2\10\1\0\5\10\7\0\16\10\63\0\1\251"+
+ "\111\0\1\254\51\0\34\251\1\356\1\340\106\251\1\357"+
+ "\1\340\52\251\35\254\1\341\1\360\106\254\1\341\1\356"+
+ "\51\254\1\0\11\10\2\0\7\10\1\0\2\10\1\0"+
+ "\5\10\7\0\11\10\1\361\4\10\30\0\11\10\2\0"+
+ "\7\10\1\0\2\10\1\0\4\10\1\362\7\0\16\10"+
+ "\27\0\34\224\1\363\1\323\52\224\35\225\1\324\1\364"+
+ "\51\225\34\251\1\365\1\340\52\251\35\254\1\341\1\366"+
+ "\51\254\1\0\11\10\2\0\7\10\1\0\1\367\1\10"+
+ "\1\0\5\10\7\0\16\10\27\0\34\224\1\370\1\323"+
+ "\52\224\35\225\1\324\1\371\51\225\34\251\1\372\1\340"+
+ "\52\251\35\254\1\341\1\373\51\254";
private static int [] zzUnpackTrans() {
- int [] result = new int[12528];
+ int [] result = new int[12456];
int offset = 0;
offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result);
return result;
@@ -567,18 +632,18 @@ class _PythonLexer implements FlexLexer {
private static final int [] ZZ_ATTRIBUTE = zzUnpackAttribute();
private static final String ZZ_ATTRIBUTE_PACKED_0 =
- "\4\0\1\11\1\1\6\11\3\1\1\11\43\1\11\11"+
- "\1\1\3\11\1\0\3\1\1\11\4\1\4\0\1\11"+
- "\1\1\1\0\1\11\11\1\1\11\27\1\3\11\1\1"+
- "\1\11\1\1\5\11\1\1\2\11\1\1\2\11\2\0"+
- "\2\1\1\11\1\0\5\1\1\0\13\1\1\11\17\1"+
- "\4\11\3\0\2\1\1\0\2\1\2\0\7\1\4\0"+
- "\10\1\3\0\2\1\1\0\1\1\2\0\5\1\1\0"+
- "\2\1\1\0\16\1\1\11\6\1\2\0\2\1\2\0"+
+ "\3\0\1\11\16\1\1\11\1\1\4\11\25\1\15\11"+
+ "\5\1\4\0\1\11\1\1\1\0\1\11\11\1\1\11"+
+ "\27\1\3\11\1\1\1\11\1\1\5\11\1\1\2\11"+
+ "\1\1\1\11\1\0\3\1\1\11\3\1\1\11\1\0"+
+ "\4\1\1\0\13\1\1\11\17\1\4\11\1\0\2\1"+
+ "\1\11\1\0\3\1\2\0\7\1\4\0\10\1\3\0"+
+ "\2\1\1\0\1\1\2\0\5\1\1\0\2\1\1\0"+
+ "\7\1\3\0\2\1\1\0\4\1\1\11\13\1\4\0"+
"\5\1";
private static int [] zzUnpackAttribute() {
- int [] result = new int[253];
+ int [] result = new int[251];
int offset = 0;
offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result);
return result;
@@ -668,7 +733,7 @@ return yylength()-i-1;
char [] map = new char[0x10000];
int i = 0; /* index in packed string */
int j = 0; /* index in unpacked array */
- while (i < 3338) {
+ while (i < 4678) {
int count = packed.charAt(i++);
char value = packed.charAt(i++);
do map[j++] = value; while (--count > 0);
@@ -849,7 +914,7 @@ return yylength()-i-1;
while (true) {
if (zzCurrentPosL < zzEndReadL)
- zzInput = zzBufferL.charAt(zzCurrentPosL++);
+ zzInput = (zzBufferArrayL != null ? zzBufferArrayL[zzCurrentPosL++] : zzBufferL.charAt(zzCurrentPosL++));
else if (zzAtEOF) {
zzInput = YYEOF;
break zzForAction;
@@ -869,7 +934,7 @@ return yylength()-i-1;
break zzForAction;
}
else {
- zzInput = zzBufferL.charAt(zzCurrentPosL++);
+ zzInput = (zzBufferArrayL != null ? zzBufferArrayL[zzCurrentPosL++] : zzBufferL.charAt(zzCurrentPosL++));
}
}
int zzNext = zzTransL[ zzRowMapL[zzState] + zzCMapL[zzInput] ];
@@ -890,376 +955,372 @@ return yylength()-i-1;
zzMarkedPos = zzMarkedPosL;
switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction]) {
- case 83:
+ case 82:
{ return PyTokenTypes.YIELD_KEYWORD;
}
- case 93: break;
- case 11:
+ case 92: break;
+ case 2:
{ return PyTokenTypes.INTEGER_LITERAL;
}
- case 94: break;
- case 19:
+ case 93: break;
+ case 16:
{ return PyTokenTypes.DIV;
}
- case 95: break;
- case 20:
+ case 94: break;
+ case 17:
{ return PyTokenTypes.PERC;
}
- case 96: break;
- case 3:
+ case 95: break;
+ case 8:
{ return PyTokenTypes.BACKSLASH;
}
- case 97: break;
- case 28:
+ case 96: break;
+ case 25:
{ return PyTokenTypes.RPAR;
}
- case 98: break;
- case 10:
+ case 97: break;
+ case 1:
{ return PyTokenTypes.BAD_CHARACTER;
}
- case 99: break;
- case 31:
+ case 98: break;
+ case 28:
{ return PyTokenTypes.LBRACE;
}
+ case 99: break;
+ case 35:
+ { yypushback(1); yybegin(YYINITIAL);
+ }
case 100: break;
- case 69:
+ case 66:
{ yybegin(IN_DOCSTRING_OWNER); return PyTokenTypes.DEF_KEYWORD;
}
case 101: break;
- case 81:
+ case 80:
{ yybegin(IN_DOCSTRING_OWNER); return PyTokenTypes.CLASS_KEYWORD;
}
case 102: break;
- case 64:
+ case 74:
{ yypushback(getSpaceLength(yytext())); return PyTokenTypes.DOCSTRING;
}
case 103: break;
- case 14:
+ case 6:
{ return PyTokenTypes.MINUS;
}
case 104: break;
- case 80:
+ case 79:
{ return PyTokenTypes.BREAK_KEYWORD;
}
case 105: break;
- case 30:
+ case 27:
{ return PyTokenTypes.RBRACKET;
}
case 106: break;
- case 1:
- { yypushback(1); yybegin(PENDING_DOCSTRING);
+ case 60:
+ { yypushback(getSpaceLength(yytext())); yybegin(YYINITIAL); return PyTokenTypes.DOCSTRING;
}
case 107: break;
- case 8:
- { yypushback(1); yybegin(USUAL);
- }
- case 108: break;
- case 13:
+ case 5:
{ return PyTokenTypes.DOT;
}
- case 109: break;
- case 12:
+ case 108: break;
+ case 3:
{ return PyTokenTypes.IDENTIFIER;
}
- case 110: break;
- case 27:
+ case 109: break;
+ case 24:
{ return PyTokenTypes.LPAR;
}
- case 111: break;
- case 25:
+ case 110: break;
+ case 22:
{ return PyTokenTypes.LT;
}
- case 112: break;
- case 44:
+ case 111: break;
+ case 42:
{ return PyTokenTypes.IN_KEYWORD;
}
+ case 112: break;
+ case 63:
+ { if (zzCurrentPos == 0) return PyTokenTypes.DOCSTRING; return PyTokenTypes.TRIPLE_QUOTED_STRING;
+ }
case 113: break;
- case 82:
+ case 81:
{ return PyTokenTypes.RAISE_KEYWORD;
}
case 114: break;
- case 74:
+ case 71:
{ return PyTokenTypes.GTGTEQ;
}
case 115: break;
- case 5:
+ case 10:
{ return PyTokenTypes.SPACE;
}
case 116: break;
- case 86:
+ case 85:
{ return PyTokenTypes.EXCEPT_KEYWORD;
}
case 117: break;
- case 40:
+ case 38:
{ return PyTokenTypes.IMAGINARY_LITERAL;
}
case 118: break;
- case 15:
- { return PyTokenTypes.SINGLE_QUOTED_STRING;
- }
- case 119: break;
- case 7:
+ case 12:
{ return PyTokenTypes.FORMFEED;
}
- case 120: break;
- case 37:
+ case 119: break;
+ case 34:
{ return PyTokenTypes.SEMICOLON;
}
- case 121: break;
- case 24:
+ case 120: break;
+ case 21:
{ return PyTokenTypes.GT;
}
- case 122: break;
- case 29:
+ case 121: break;
+ case 26:
{ return PyTokenTypes.LBRACKET;
}
- case 123: break;
- case 35:
+ case 122: break;
+ case 32:
{ return PyTokenTypes.COLON;
}
- case 124: break;
- case 75:
+ case 123: break;
+ case 72:
{ return PyTokenTypes.LTLTEQ;
}
- case 125: break;
- case 9:
- { if (zzInput == YYEOF) return PyTokenTypes.DOCSTRING;
- else yybegin(USUAL); return PyTokenTypes.SINGLE_QUOTED_STRING;
- }
- case 126: break;
- case 77:
+ case 124: break;
+ case 76:
{ return PyTokenTypes.ELSE_KEYWORD;
}
- case 127: break;
- case 22:
+ case 125: break;
+ case 19:
{ return PyTokenTypes.OR;
}
- case 128: break;
- case 48:
+ case 126: break;
+ case 46:
{ return PyTokenTypes.MULTEQ;
}
- case 129: break;
- case 91:
+ case 127: break;
+ case 90:
{ return PyTokenTypes.FINALLY_KEYWORD;
}
- case 130: break;
- case 84:
+ case 128: break;
+ case 83:
{ return PyTokenTypes.WHILE_KEYWORD;
}
- case 131: break;
- case 18:
+ case 129: break;
+ case 15:
{ return PyTokenTypes.MULT;
}
- case 132: break;
- case 87:
+ case 130: break;
+ case 86:
{ return PyTokenTypes.ASSERT_KEYWORD;
}
- case 133: break;
- case 51:
+ case 131: break;
+ case 49:
{ return PyTokenTypes.FLOORDIV;
}
- case 134: break;
- case 90:
+ case 132: break;
+ case 89:
{ return PyTokenTypes.GLOBAL_KEYWORD;
}
- case 135: break;
- case 85:
+ case 133: break;
+ case 36:
+ { if (zzInput == YYEOF) return PyTokenTypes.DOCSTRING;
+ else yybegin(YYINITIAL); return PyTokenTypes.SINGLE_QUOTED_STRING;
+ }
+ case 134: break;
+ case 84:
{ return PyTokenTypes.LAMBDA_KEYWORD;
}
- case 136: break;
- case 55:
+ case 135: break;
+ case 53:
{ return PyTokenTypes.XOREQ;
}
- case 137: break;
- case 65:
+ case 136: break;
+ case 62:
{ return PyTokenTypes.FOR_KEYWORD;
}
- case 138: break;
- case 33:
+ case 137: break;
+ case 30:
{ return PyTokenTypes.AT;
}
- case 139: break;
- case 68:
+ case 138: break;
+ case 65:
{ return PyTokenTypes.NOT_KEYWORD;
}
- case 140: break;
- case 16:
+ case 139: break;
+ case 13:
{ return PyTokenTypes.PLUS;
}
- case 141: break;
- case 42:
+ case 140: break;
+ case 40:
{ return PyTokenTypes.MINUSEQ;
}
- case 142: break;
- case 38:
- { yypushback(getSpaceLength(yytext())); yybegin(USUAL); return PyTokenTypes.DOCSTRING;
- }
- case 143: break;
- case 61:
+ case 141: break;
+ case 59:
{ return PyTokenTypes.NE;
}
- case 144: break;
- case 34:
+ case 142: break;
+ case 31:
{ return PyTokenTypes.COMMA;
}
+ case 143: break;
+ case 45:
+ { return PyTokenTypes.EQEQ;
+ }
+ case 144: break;
+ case 33:
+ { return PyTokenTypes.TICK;
+ }
case 145: break;
case 47:
- { return PyTokenTypes.EQEQ;
- }
- case 146: break;
- case 36:
- { return PyTokenTypes.TICK;
- }
- case 147: break;
- case 49:
{ return PyTokenTypes.EXP;
}
- case 148: break;
- case 66:
- { return PyTokenTypes.TRIPLE_QUOTED_STRING;
- }
- case 149: break;
- case 92:
+ case 146: break;
+ case 91:
{ return PyTokenTypes.CONTINUE_KEYWORD;
}
- case 150: break;
- case 60:
+ case 147: break;
+ case 58:
{ return PyTokenTypes.LTLT;
}
- case 151: break;
- case 58:
+ case 148: break;
+ case 56:
{ return PyTokenTypes.LE;
}
- case 152: break;
- case 67:
+ case 149: break;
+ case 64:
{ return PyTokenTypes.AND_KEYWORD;
}
- case 153: break;
- case 41:
+ case 150: break;
+ case 39:
{ return PyTokenTypes.OR_KEYWORD;
}
- case 154: break;
- case 79:
+ case 151: break;
+ case 78:
{ return PyTokenTypes.PASS_KEYWORD;
}
- case 155: break;
- case 62:
+ case 152: break;
+ case 61:
{ yypushback(yylength()-1); yybegin(PENDING_DOCSTRING); return PyTokenTypes.COLON;
}
- case 156: break;
- case 2:
+ case 153: break;
+ case 4:
{ return PyTokenTypes.END_OF_LINE_COMMENT;
}
- case 157: break;
- case 63:
- { if (zzInput == YYEOF) return PyTokenTypes.DOCSTRING;
- else yybegin(USUAL); return PyTokenTypes.TRIPLE_QUOTED_STRING;
- }
- case 158: break;
- case 54:
+ case 154: break;
+ case 52:
{ return PyTokenTypes.OREQ;
}
- case 159: break;
- case 57:
+ case 155: break;
+ case 55:
{ return PyTokenTypes.GTGT;
}
- case 160: break;
- case 21:
+ case 156: break;
+ case 18:
{ return PyTokenTypes.AND;
}
- case 161: break;
- case 50:
+ case 157: break;
+ case 48:
{ return PyTokenTypes.DIVEQ;
}
- case 162: break;
- case 88:
+ case 158: break;
+ case 87:
{ return PyTokenTypes.RETURN_KEYWORD;
}
- case 163: break;
- case 89:
+ case 159: break;
+ case 88:
{ return PyTokenTypes.IMPORT_KEYWORD;
}
- case 164: break;
- case 56:
+ case 160: break;
+ case 54:
{ return PyTokenTypes.GE;
}
- case 165: break;
- case 46:
+ case 161: break;
+ case 44:
{ return PyTokenTypes.PLUSEQ;
}
- case 166: break;
- case 45:
+ case 162: break;
+ case 73:
+ { if (zzInput == YYEOF) return PyTokenTypes.DOCSTRING;
+ else yybegin(YYINITIAL); return PyTokenTypes.TRIPLE_QUOTED_STRING;
+ }
+ case 163: break;
+ case 43:
{ return PyTokenTypes.IS_KEYWORD;
}
- case 167: break;
- case 73:
- { return PyTokenTypes.FLOORDIVEQ;
- }
- case 168: break;
- case 39:
+ case 164: break;
+ case 37:
{ return PyTokenTypes.FLOAT_LITERAL;
}
- case 169: break;
- case 4:
+ case 165: break;
+ case 70:
+ { return PyTokenTypes.FLOORDIVEQ;
+ }
+ case 166: break;
+ case 9:
{ return PyTokenTypes.LINE_BREAK;
}
- case 170: break;
- case 52:
+ case 167: break;
+ case 50:
{ return PyTokenTypes.PERCEQ;
}
- case 171: break;
- case 71:
+ case 168: break;
+ case 68:
{ return PyTokenTypes.TRY_KEYWORD;
}
- case 172: break;
- case 53:
+ case 169: break;
+ case 51:
{ return PyTokenTypes.ANDEQ;
}
- case 173: break;
- case 17:
+ case 170: break;
+ case 14:
{ return PyTokenTypes.EQ;
}
- case 174: break;
- case 76:
+ case 171: break;
+ case 75:
{ return PyTokenTypes.FROM_KEYWORD;
}
- case 175: break;
- case 72:
+ case 172: break;
+ case 7:
+ { if (zzCurrentPos == 0) return PyTokenTypes.DOCSTRING; return PyTokenTypes.SINGLE_QUOTED_STRING;
+ }
+ case 173: break;
+ case 69:
{ return PyTokenTypes.EXPEQ;
}
- case 176: break;
- case 78:
+ case 174: break;
+ case 77:
{ return PyTokenTypes.ELIF_KEYWORD;
}
- case 177: break;
- case 32:
+ case 175: break;
+ case 29:
{ return PyTokenTypes.RBRACE;
}
- case 178: break;
- case 43:
+ case 176: break;
+ case 41:
{ return PyTokenTypes.IF_KEYWORD;
}
- case 179: break;
- case 6:
+ case 177: break;
+ case 11:
{ return PyTokenTypes.TAB;
}
- case 180: break;
- case 59:
+ case 178: break;
+ case 57:
{ return PyTokenTypes.NE_OLD;
}
- case 181: break;
- case 26:
+ case 179: break;
+ case 23:
{ return PyTokenTypes.TILDE;
}
- case 182: break;
- case 23:
+ case 180: break;
+ case 20:
{ return PyTokenTypes.XOR;
}
- case 183: break;
- case 70:
+ case 181: break;
+ case 67:
{ return PyTokenTypes.DEL_KEYWORD;
}
- case 184: break;
+ case 182: break;
default:
if (zzInput == YYEOF && zzStartRead == zzCurrentPos) {
zzAtEOF = true;