From a3aa6cc93e22fd6ff37ea6f3aa91810cab2aa624 Mon Sep 17 00:00:00 2001 From: Mika Murtojarvi Date: Fri, 8 Nov 2013 11:23:35 +0200 Subject: [PATCH] Fixes for sass compiler, handling mixins (#11288). Keyframe selectors can now be comma-separated lists, interpolation unquotes a quoted string and the parameters of an @include are no longer lost. Change-Id: I2622aca7471adc8004371affbb803d850e801307 --- .../internal/handler/SCSSDocumentHandler.java | 5 +- .../handler/SCSSDocumentHandlerImpl.java | 7 +- .../sass/internal/parser/LexicalUnitImpl.java | 13 + .../vaadin/sass/internal/parser/Parser.java | 15653 ++++++++-------- .../com/vaadin/sass/internal/parser/Parser.jj | 16 +- .../sass/internal/parser/ParserConstants.java | 633 +- .../internal/parser/ParserTokenManager.java | 10864 +++++------ .../vaadin/sass/internal/tree/BlockNode.java | 3 +- .../sass/internal/tree/KeyframesNode.java | 3 +- .../vaadin/sass/internal/tree/RuleNode.java | 5 +- .../css/interpolation-singlequote.css | 1 + .../automatic/css/mixin-keyframes.css | 10 + .../scss/interpolation-singlequote.scss | 7 + .../automatic/scss/mixin-keyframes.scss | 14 + 14 files changed, 12815 insertions(+), 14419 deletions(-) create mode 100644 theme-compiler/tests/resources/automatic/css/interpolation-singlequote.css create mode 100644 theme-compiler/tests/resources/automatic/css/mixin-keyframes.css create mode 100644 theme-compiler/tests/resources/automatic/scss/interpolation-singlequote.scss create mode 100644 theme-compiler/tests/resources/automatic/scss/mixin-keyframes.scss diff --git a/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandler.java b/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandler.java index b9672b6c78..e6916e5070 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandler.java +++ b/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandler.java @@ -18,6 +18,7 @@ package com.vaadin.sass.internal.handler; import java.util.ArrayList; import java.util.Collection; +import java.util.List; import org.w3c.css.sac.CSSException; import org.w3c.css.sac.DocumentHandler; @@ -50,7 +51,7 @@ public interface SCSSDocumentHandler extends DocumentHandler { void endNestedProperties(String name); - void includeDirective(String name, Collection args); + void includeDirective(String name, List args); void importStyle(String uri, SACMediaList media, boolean isURL); @@ -98,7 +99,7 @@ public interface SCSSDocumentHandler extends DocumentHandler { void contentDirective(); - void startIncludeContentBlock(String name); + void startIncludeContentBlock(String name, List args); void endIncludeContentBlock(); diff --git a/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandlerImpl.java b/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandlerImpl.java index d77a404ae8..99f00e3889 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandlerImpl.java +++ b/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandlerImpl.java @@ -18,6 +18,7 @@ package com.vaadin.sass.internal.handler; import java.util.ArrayList; import java.util.Collection; +import java.util.List; import java.util.Stack; import org.w3c.css.sac.CSSException; @@ -244,7 +245,7 @@ public class SCSSDocumentHandlerImpl implements SCSSDocumentHandler { } @Override - public void includeDirective(String name, Collection args) { + public void includeDirective(String name, List args) { MixinNode node = new MixinNode(name, args); nodeStack.peek().appendChild(node); } @@ -374,8 +375,8 @@ public class SCSSDocumentHandlerImpl implements SCSSDocumentHandler { } @Override - public void startIncludeContentBlock(String name) { - MixinNode node = new MixinNode(name); + public void startIncludeContentBlock(String name, List args) { + MixinNode node = new MixinNode(name, args); nodeStack.peek().appendChild(node); nodeStack.push(node); diff --git a/theme-compiler/src/com/vaadin/sass/internal/parser/LexicalUnitImpl.java b/theme-compiler/src/com/vaadin/sass/internal/parser/LexicalUnitImpl.java index af94de0f46..cfd428e094 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/parser/LexicalUnitImpl.java +++ b/theme-compiler/src/com/vaadin/sass/internal/parser/LexicalUnitImpl.java @@ -377,6 +377,19 @@ public class LexicalUnitImpl implements LexicalUnit, SCSSLexicalUnit, } } + // A helper method for sass interpolation + public String unquotedString() { + String result = toString(); + if (result.length() >= 2 + && ((result.charAt(0) == '"' && result + .charAt(result.length() - 1) == '"') || (result + .charAt(0) == '\'' && result + .charAt(result.length() - 1) == '\''))) { + result = result.substring(1, result.length() - 1); + } + return result; + } + @Override public LexicalUnitImpl divide(LexicalUnitImpl denominator) { if (denominator.getLexicalUnitType() != SAC_INTEGER diff --git a/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.java b/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.java index bdc5fbc86f..679e696aa3 100755 --- a/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.java +++ b/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.java @@ -16,38 +16,39 @@ /* Generated By:JavaCC: Do not edit this line. Parser.java */ package com.vaadin.sass.internal.parser; -import java.io.BufferedInputStream; -import java.io.FileInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.Reader; -import java.net.URL; +import java.io.*; +import java.net.*; import java.util.ArrayList; import java.util.Locale; +import java.util.Map; import java.util.UUID; -import org.w3c.css.sac.CSSException; -import org.w3c.css.sac.CSSParseException; import org.w3c.css.sac.ConditionFactory; +import org.w3c.css.sac.Condition; +import org.w3c.css.sac.SelectorFactory; +import org.w3c.css.sac.SelectorList; +import org.w3c.css.sac.Selector; +import org.w3c.css.sac.SimpleSelector; import org.w3c.css.sac.DocumentHandler; -import org.w3c.css.sac.ErrorHandler; import org.w3c.css.sac.InputSource; -import org.w3c.css.sac.LexicalUnit; +import org.w3c.css.sac.ErrorHandler; +import org.w3c.css.sac.CSSException; +import org.w3c.css.sac.CSSParseException; import org.w3c.css.sac.Locator; -import org.w3c.css.sac.SelectorFactory; -import org.w3c.css.sac.SelectorList; -import org.w3c.flute.parser.selectors.ConditionFactoryImpl; +import org.w3c.css.sac.LexicalUnit; + import org.w3c.flute.parser.selectors.SelectorFactoryImpl; +import org.w3c.flute.parser.selectors.ConditionFactoryImpl; + import org.w3c.flute.util.Encoding; -import com.vaadin.sass.internal.handler.SCSSDocumentHandlerImpl; -import com.vaadin.sass.internal.tree.Node; -import com.vaadin.sass.internal.tree.VariableNode; +import com.vaadin.sass.internal.handler.*; + +import com.vaadin.sass.internal.tree.*; /** * A CSS2 parser - * + * * @author Philippe Le H�garet * @version $Revision: 1.15 $ */ @@ -78,32 +79,27 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { /** * @@TODO - * @exception CSSException - * Not yet implemented + * @exception CSSException Not yet implemented */ - @Override public void setLocale(Locale locale) throws CSSException { throw new CSSException(CSSException.SAC_NOT_SUPPORTED_ERR); } - public InputSource getInputSource() { + public InputSource getInputSource(){ return source; } /** * Set the document handler for this parser */ - @Override public void setDocumentHandler(DocumentHandler handler) { - documentHandler = (SCSSDocumentHandlerImpl) handler; + this.documentHandler = (SCSSDocumentHandlerImpl) handler; } - @Override public void setSelectorFactory(SelectorFactory selectorFactory) { this.selectorFactory = selectorFactory; } - @Override public void setConditionFactory(ConditionFactory conditionFactory) { this.conditionFactory = conditionFactory; } @@ -111,24 +107,19 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { /** * Set the error handler for this parser */ - @Override public void setErrorHandler(ErrorHandler error) { - errorHandler = error; + this.errorHandler = error; } /** * Main parse methods - * - * @param source - * the source of the style sheet. - * @exception IOException - * the source can't be parsed. - * @exception CSSException - * the source is not CSS valid. + * + * @param source the source of the style sheet. + * @exception IOException the source can't be parsed. + * @exception CSSException the source is not CSS valid. */ - @Override - public void parseStyleSheet(InputSource source) throws CSSException, - IOException { + public void parseStyleSheet(InputSource source) + throws CSSException, IOException { this.source = source; ReInit(getCharStreamWithLurk(source)); if (selectorFactory == null) { @@ -143,35 +134,26 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { /** * Convenient method for URIs. - * - * @param systemId - * the fully resolved URI of the style sheet. - * @exception IOException - * the source can't be parsed. - * @exception CSSException - * the source is not CSS valid. + * + * @param systemId the fully resolved URI of the style sheet. + * @exception IOException the source can't be parsed. + * @exception CSSException the source is not CSS valid. */ - @Override - public void parseStyleSheet(String systemId) throws CSSException, - IOException { + public void parseStyleSheet(String systemId) + throws CSSException, IOException { parseStyleSheet(new InputSource(systemId)); } /** - * This method parses only one rule (style rule or at-rule, except - * - * @charset). - * - * @param source - * the source of the rule. - * @exception IOException - * the source can't be parsed. - * @exception CSSException - * the source is not CSS valid. + * This method parses only one rule (style rule or at-rule, except @charset). + * + * @param source the source of the rule. + * @exception IOException the source can't be parsed. + * @exception CSSException the source is not CSS valid. */ // TODO required by original parser but not used by Vaadin? - @Override - public void parseRule(InputSource source) throws CSSException, IOException { + public void parseRule(InputSource source) + throws CSSException, IOException { this.source = source; ReInit(getCharStreamWithLurk(source)); @@ -187,17 +169,13 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { /** * This method parses a style declaration (including the surrounding curly * braces). - * - * @param source - * the source of the style declaration. - * @exception IOException - * the source can't be parsed. - * @exception CSSException - * the source is not CSS valid. + * + * @param source the source of the style declaration. + * @exception IOException the source can't be parsed. + * @exception CSSException the source is not CSS valid. */ - @Override - public void parseStyleDeclaration(InputSource source) throws CSSException, - IOException { + public void parseStyleDeclaration(InputSource source) + throws CSSException, IOException { this.source = source; ReInit(getCharStreamWithLurk(source)); @@ -212,10 +190,8 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { /** * This methods returns "http://www.w3.org/TR/REC-CSS2". - * * @return the string "http://www.w3.org/TR/REC-CSS2". */ - @Override public String getParserVersion() { return "http://www.w3.org/TR/REC-CSS2"; } @@ -223,8 +199,8 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { /** * Parse methods used by DOM Level 2 implementation. */ - public void parseImportRule(InputSource source) throws CSSException, - IOException { + public void parseImportRule(InputSource source) + throws CSSException, IOException { this.source = source; ReInit(getCharStreamWithLurk(source)); @@ -237,8 +213,8 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { _parseImportRule(); } - public void parseMediaRule(InputSource source) throws CSSException, - IOException { + public void parseMediaRule(InputSource source) + throws CSSException, IOException { this.source = source; ReInit(getCharStreamWithLurk(source)); @@ -251,16 +227,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { _parseMediaRule(); } - @Override - public SelectorList parseSelectors(InputSource source) throws CSSException, - IOException { + public SelectorList parseSelectors(InputSource source) + throws CSSException, IOException { this.source = source; ReInit(getCharStreamWithLurk(source)); return null; } - @Override public LexicalUnit parsePropertyValue(InputSource source) throws CSSException, IOException { this.source = source; @@ -269,9 +243,8 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return expr(); } - @Override - public boolean parsePriority(InputSource source) throws CSSException, - IOException { + public boolean parsePriority(InputSource source) + throws CSSException, IOException { this.source = source; ReInit(getCharStreamWithLurk(source)); @@ -279,8 +252,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } /** - * Convert the source into a Reader. Used only by DOM Level 2 parser - * methods. + * Convert the source into a Reader. Used only by DOM Level 2 parser methods. */ private Reader getReader(InputSource source) throws IOException { if (source.getCharacterStream() != null) { @@ -292,7 +264,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return new InputStreamReader(source.getByteStream(), "ASCII"); } else { return new InputStreamReader(source.getByteStream(), - source.getEncoding()); + source.getEncoding()); } } else { // systemId @@ -302,10 +274,11 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } /** - * Convert the source into a CharStream with encoding informations. The - * encoding can be found in the InputSource or in the CSS document. Since - * this method marks the reader and make a reset after looking for the - * charset declaration, you'll find the charset declaration into the stream. + * Convert the source into a CharStream with encoding informations. + * The encoding can be found in the InputSource or in the CSS document. + * Since this method marks the reader and make a reset after looking for + * the charset declaration, you'll find the charset declaration into the + * stream. */ private CharStream getCharStreamWithLurk(InputSource source) throws CSSException, IOException { @@ -325,7 +298,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } } } - // use UTF-8 as the default encoding. + //use UTF-8 as the default encoding. String encoding = source.getEncoding(); InputStream input = source.getByteStream(); if (!input.markSupported()) { @@ -335,7 +308,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } // Mark either the original stream or the wrapped stream input.mark(100); - if (encoding == null) { + if(encoding == null){ encoding = "ASCII"; char c = ' '; @@ -344,15 +317,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { if (c == '@') { // hum, is it a charset ? - int size = 100; + int size = 100; byte[] buf = new byte[size]; input.read(buf, 0, 7); String keyword = new String(buf, 0, 7); if (keyword.equals("charset")) { // Yes, this is the charset declaration ! - // here I don't use the right declaration : white space are - // ' '. + // here I don't use the right declaration : white space are ' '. while ((c = (char) input.read()) == ' ') { // find the first quote } @@ -379,17 +351,15 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { if (c != ';') { // no semi colon at the end ? throw new CSSException("invalid charset declaration: " - + "missing semi colon"); + + "missing semi colon"); } encoding = new String(buf, 0, i); if (source.getEncoding() != null) { // compare the two encoding informations. - // For example, I don't accept to have ASCII and after - // UTF-8. + // For example, I don't accept to have ASCII and after UTF-8. // Is it really good ? That is the question. if (!encoding.equals(source.getEncoding())) { - throw new CSSException( - "invalid encoding information."); + throw new CSSException("invalid encoding information."); } } } // else no charset declaration available @@ -399,7 +369,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { source.setEncoding(encoding); // set the real reader of this source. source.setCharacterStream(new InputStreamReader(source.getByteStream(), - Encoding.getJavaEncoding(encoding))); + Encoding.getJavaEncoding(encoding))); // reset the stream (leave the charset declaration in the stream). input.reset(); @@ -407,7 +377,6 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } private LocatorImpl currentLocator; - private Locator getLocator() { if (currentLocator == null) { currentLocator = new LocatorImpl(this); @@ -415,7 +384,6 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } return currentLocator.reInit(this); } - private LocatorImpl getLocator(Token save) { if (currentLocator == null) { currentLocator = new LocatorImpl(this, save); @@ -432,8 +400,8 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { if (pe.specialConstructor) { StringBuffer errorM = new StringBuffer(); if (pe.currentToken != null) { - errorM.append("encountered \u005c"").append( - pe.currentToken.next); + errorM.append("encountered \u005c"") + .append(pe.currentToken.next); } errorM.append('"'); if (pe.expectedTokenSequences.length != 0) { @@ -449,10 +417,10 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } } errorHandler.error(new CSSParseException(errorM.toString(), - l, e)); + l, e)); } else { - errorHandler.error(new CSSParseException(e.getMessage(), l, - e)); + errorHandler.error(new CSSParseException(e.getMessage(), + l, e)); } } else if (e == null) { errorHandler.error(new CSSParseException("error", l, null)); @@ -463,8322 +431,7561 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } private void reportWarningSkipText(Locator l, String text) { - if (errorHandler != null && text != null) { + if (errorHandler != null && text != null) { errorHandler.warning(new CSSParseException("Skipping: " + text, l)); } } - /* - * The grammar of CSS2 - */ +/* + * The grammar of CSS2 + */ - /** - * The main entry for the parser. - * - * @exception ParseException - * exception during the parse - */ - final public void parserUnit() throws ParseException { - try { - documentHandler.startDocument(source); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case CHARSET_SYM: - charset(); - break; - default: - jj_la1[0] = jj_gen; - ; - } - label_1: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - case CDO: - case CDC: - case ATKEYWORD: - ; - break; - default: - jj_la1[1] = jj_gen; - break label_1; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - jj_consume_token(S); - comments(); - break; - case CDO: - case CDC: - case ATKEYWORD: - ignoreStatement(); - break; - default: - jj_la1[2] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - label_2: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IMPORT_SYM: - ; - break; - default: - jj_la1[3] = jj_gen; - break label_2; - } - importDeclaration(); - label_3: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case CDO: - case CDC: - case ATKEYWORD: - ; - break; - default: - jj_la1[4] = jj_gen; - break label_3; - } - ignoreStatement(); - label_4: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[5] = jj_gen; - break label_4; - } - jj_consume_token(S); - } - } - } - afterImportDeclaration(); - jj_consume_token(0); - } finally { - documentHandler.endDocument(source); +/** + * The main entry for the parser. + * + * @exception ParseException exception during the parse + */ + final public void parserUnit() throws ParseException { + try { + documentHandler.startDocument(source); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case CHARSET_SYM: + charset(); + break; + default: + jj_la1[0] = jj_gen; + ; + } + label_1: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + case CDO: + case CDC: + case ATKEYWORD: + ; + break; + default: + jj_la1[1] = jj_gen; + break label_1; } - } - - final public void charset() throws ParseException { - Token n; - try { - jj_consume_token(CHARSET_SYM); - label_5: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[6] = jj_gen; - break label_5; - } - jj_consume_token(S); - } - n = jj_consume_token(STRING); - label_6: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[7] = jj_gen; - break label_6; - } - jj_consume_token(S); - } - jj_consume_token(SEMICOLON); - } catch (ParseException e) { - reportError(getLocator(e.currentToken.next), e); - skipStatement(); - // reportWarningSkipText(getLocator(), skipStatement()); - - } catch (Exception e) { - reportError(getLocator(), e); - skipStatement(); - // reportWarningSkipText(getLocator(), skipStatement()); - + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + jj_consume_token(S); + comments(); + break; + case CDO: + case CDC: + case ATKEYWORD: + ignoreStatement(); + break; + default: + jj_la1[2] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + label_2: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IMPORT_SYM: + ; + break; + default: + jj_la1[3] = jj_gen; + break label_2; } - } - - final public void afterImportDeclaration() throws ParseException { - String ret; - Locator l; - label_7: while (true) { + importDeclaration(); + label_3: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case CDO: + case CDC: + case ATKEYWORD: ; - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case DEBUG_SYM: - case WARN_SYM: - debuggingDirective(); - break; - case MIXIN_SYM: - mixinDirective(); - break; - case EACH_SYM: - case IF_SYM: - controlDirective(); - break; - case INCLUDE_SYM: - includeDirective(); - break; - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case IDENT: - case HASH: - styleRule(); - break; - case MEDIA_SYM: - media(); - break; - case PAGE_SYM: - page(); - break; - case FONT_FACE_SYM: - fontFace(); - break; - case KEY_FRAME_SYM: - keyframes(); - break; + break; + default: + jj_la1[4] = jj_gen; + break label_3; + } + ignoreStatement(); + label_4: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; default: - jj_la1[8] = jj_gen; - if (jj_2_1(2147483647)) { - variable(); - } else { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case VARIABLE: - listModifyDirective(); - break; - default: - jj_la1[9] = jj_gen; - l = getLocator(); - ret = skipStatement(); - if ((ret == null) || (ret.length() == 0)) { - { - if (true) { - return; - } - } - } - if (ret.charAt(0) == '@') { - documentHandler.unrecognizedRule(ret); - } else { - reportWarningSkipText(l, ret); - } - } - } - } - label_8: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case CDO: - case CDC: - case ATKEYWORD: - ; - break; - default: - jj_la1[10] = jj_gen; - break label_8; - } - ignoreStatement(); - label_9: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[11] = jj_gen; - break label_9; - } - jj_consume_token(S); - } + jj_la1[5] = jj_gen; + break label_4; } - } - } - - final public void ignoreStatement() throws ParseException { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case CDO: - jj_consume_token(CDO); + jj_consume_token(S); + } + } + } + afterImportDeclaration(); + jj_consume_token(0); + } finally { + documentHandler.endDocument(source); + } + } + + final public void charset() throws ParseException { + Token n; + try { + jj_consume_token(CHARSET_SYM); + label_5: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[6] = jj_gen; + break label_5; + } + jj_consume_token(S); + } + n = jj_consume_token(STRING); + label_6: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[7] = jj_gen; + break label_6; + } + jj_consume_token(S); + } + jj_consume_token(SEMICOLON); + } catch (ParseException e) { + reportError(getLocator(e.currentToken.next), e); + skipStatement(); + // reportWarningSkipText(getLocator(), skipStatement()); + + } catch (Exception e) { + reportError(getLocator(), e); + skipStatement(); + // reportWarningSkipText(getLocator(), skipStatement()); + + } + } + + final public void afterImportDeclaration() throws ParseException { + String ret; + Locator l; + label_7: + while (true) { + ; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case DEBUG_SYM: + case WARN_SYM: + debuggingDirective(); + break; + case MIXIN_SYM: + mixinDirective(); + break; + case EACH_SYM: + case IF_SYM: + controlDirective(); + break; + case INCLUDE_SYM: + includeDirective(); + break; + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case IDENT: + case HASH: + styleRule(); + break; + case MEDIA_SYM: + media(); + break; + case PAGE_SYM: + page(); + break; + case FONT_FACE_SYM: + fontFace(); + break; + case KEY_FRAME_SYM: + keyframes(); + break; + default: + jj_la1[8] = jj_gen; + if (jj_2_1(2147483647)) { + variable(); + } else { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case VARIABLE: + listModifyDirective(); break; + default: + jj_la1[9] = jj_gen; + l = getLocator(); + ret = skipStatement(); + if ((ret == null) || (ret.length() == 0)) { + {if (true) return;} + } + if (ret.charAt(0) == '@') { + documentHandler.unrecognizedRule(ret); + } else { + reportWarningSkipText(l, ret); + } + } + } + } + label_8: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case CDO: case CDC: - jj_consume_token(CDC); - break; case ATKEYWORD: - atRuleDeclaration(); - break; + ; + break; default: - jj_la1[12] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); + jj_la1[10] = jj_gen; + break label_8; } - } - - /** - * The import statement - * - * @exception ParseException - * exception during the parse - */ - final public void importDeclaration() throws ParseException { - Token n; - String uri; - MediaListImpl ml = new MediaListImpl(); - boolean isURL = false; - try { - jj_consume_token(IMPORT_SYM); - label_10: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[13] = jj_gen; - break label_10; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case STRING: - n = jj_consume_token(STRING); - uri = convertStringIndex(n.image, 1, n.image.length() - 1); - break; - case URL: - n = jj_consume_token(URL); - isURL = true; - uri = n.image.substring(4, n.image.length() - 1).trim(); - if ((uri.charAt(0) == '"') || (uri.charAt(0) == '\u005c'')) { - uri = uri.substring(1, uri.length() - 1); - } - break; - default: - jj_la1[14] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - label_11: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[15] = jj_gen; - break label_11; - } - jj_consume_token(S); - } - mediaStatement(ml); - jj_consume_token(SEMICOLON); - label_12: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[16] = jj_gen; - break label_12; - } - jj_consume_token(S); - } - if (ml.getLength() == 0) { - // see section 6.3 of the CSS2 recommandation. - ml.addItem("all"); - } - documentHandler.importStyle(uri, ml, isURL); - } catch (ParseException e) { - reportError(getLocator(), e); - skipStatement(); - // reportWarningSkipText(getLocator(), skipStatement()); + ignoreStatement(); + label_9: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[11] = jj_gen; + break label_9; + } + jj_consume_token(S); + } + } + } + } + + final public void ignoreStatement() throws ParseException { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case CDO: + jj_consume_token(CDO); + break; + case CDC: + jj_consume_token(CDC); + break; + case ATKEYWORD: + atRuleDeclaration(); + break; + default: + jj_la1[12] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } +/** + * The import statement + * + * @exception ParseException exception during the parse + */ + final public void importDeclaration() throws ParseException { + Token n; + String uri; + MediaListImpl ml = new MediaListImpl(); + boolean isURL = false; + try { + jj_consume_token(IMPORT_SYM); + label_10: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[13] = jj_gen; + break label_10; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case STRING: + n = jj_consume_token(STRING); + uri = convertStringIndex(n.image, 1, + n.image.length() -1); + break; + case URL: + n = jj_consume_token(URL); + isURL=true; + uri = n.image.substring(4, n.image.length()-1).trim(); + if ((uri.charAt(0) == '"') + || (uri.charAt(0) == '\u005c'')) { + uri = uri.substring(1, uri.length()-1); + } + break; + default: + jj_la1[14] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + label_11: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[15] = jj_gen; + break label_11; + } + jj_consume_token(S); + } + mediaStatement(ml); + jj_consume_token(SEMICOLON); + label_12: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[16] = jj_gen; + break label_12; } - } + jj_consume_token(S); + } + if (ml.getLength() == 0) { + // see section 6.3 of the CSS2 recommandation. + ml.addItem("all"); + } + documentHandler.importStyle(uri, ml, isURL); + } catch (ParseException e) { + reportError(getLocator(), e); + skipStatement(); + // reportWarningSkipText(getLocator(), skipStatement()); - /** - * @exception ParseException - * exception during the parse - */ - final public void keyframes() throws ParseException { - Token n; - boolean start = false; - String keyframeName = null; - String animationname = ""; - try { - n = jj_consume_token(KEY_FRAME_SYM); - label_13: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[17] = jj_gen; - break label_13; - } - jj_consume_token(S); - } - keyframeName = n.image; - label_14: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IDENT: - n = jj_consume_token(IDENT); - animationname += n.image; - break; - case INTERPOLATION: - n = jj_consume_token(INTERPOLATION); - animationname += n.image; - break; - default: - jj_la1[18] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - ; - break; - default: - jj_la1[19] = jj_gen; - break label_14; - } - } - label_15: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[20] = jj_gen; - break label_15; - } - jj_consume_token(S); - } - start = true; - documentHandler.startKeyFrames(keyframeName, animationname); - jj_consume_token(LBRACE); - label_16: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[21] = jj_gen; - break label_16; - } - jj_consume_token(S); - } - label_17: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case TO: - case FROM: - case PERCENTAGE: - ; - break; - default: - jj_la1[22] = jj_gen; - break label_17; - } - keyframeSelector(); - } - jj_consume_token(RBRACE); - label_18: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[23] = jj_gen; - break label_18; - } - jj_consume_token(S); - } - } catch (ParseException e) { - reportError(getLocator(), e); - skipStatement(); - } finally { - if (start) { - documentHandler.endKeyFrames(); - } - } } + } - final public void keyframeSelector() throws ParseException { - Token n; - boolean start = false; - try { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case FROM: - n = jj_consume_token(FROM); - break; - case TO: - n = jj_consume_token(TO); - break; - case PERCENTAGE: - n = jj_consume_token(PERCENTAGE); - break; - default: - jj_la1[24] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - label_19: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[25] = jj_gen; - break label_19; - } - jj_consume_token(S); - } - jj_consume_token(LBRACE); - label_20: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[26] = jj_gen; - break label_20; - } - jj_consume_token(S); - } - start = true; - documentHandler.startKeyframeSelector(n.image); - label_21: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case INCLUDE_SYM: - case DEBUG_SYM: - case WARN_SYM: - case EACH_SYM: - case IF_SYM: - case EXTEND_SYM: - case CONTENT_SYM: - case MICROSOFT_RULE: - case IDENT: - case VARIABLE: - case HASH: - case MEDIA_SYM: - case KEY_FRAME_SYM: - case ATKEYWORD: - ; - break; - default: - jj_la1[27] = jj_gen; - break label_21; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case INCLUDE_SYM: - case DEBUG_SYM: - case WARN_SYM: - case EACH_SYM: - case IF_SYM: - case EXTEND_SYM: - case CONTENT_SYM: - case IDENT: - case VARIABLE: - case HASH: - case MEDIA_SYM: - case KEY_FRAME_SYM: - case ATKEYWORD: - ifContentStatement(); - break; - case MICROSOFT_RULE: - microsoftExtension(); - break; - default: - jj_la1[28] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - jj_consume_token(RBRACE); - label_22: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[29] = jj_gen; - break label_22; - } - jj_consume_token(S); - } - } catch (ThrowedParseException e) { - if (errorHandler != null) { - LocatorImpl li = new LocatorImpl(this, - e.e.currentToken.next.beginLine, - e.e.currentToken.next.beginColumn - 1); - reportError(li, e.e); - } - } catch (ParseException e) { - reportError(getLocator(), e); - skipStatement(); - // reportWarningSkipText(getLocator(), skipStatement()); - - } catch (TokenMgrError e) { - reportWarningSkipText(getLocator(), skipStatement()); - } finally { - if (start) { - documentHandler.endKeyframeSelector(); - } +/** + * @exception ParseException exception during the parse + */ + final public void keyframes() throws ParseException { + Token n; + boolean start = false; + String keyframeName = null; + String animationname = ""; + try { + n = jj_consume_token(KEY_FRAME_SYM); + label_13: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[17] = jj_gen; + break label_13; + } + jj_consume_token(S); + } + keyframeName = n.image; + label_14: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IDENT: + n = jj_consume_token(IDENT); + animationname += n.image; + break; + case INTERPOLATION: + n = jj_consume_token(INTERPOLATION); + animationname += n.image; + break; + default: + jj_la1[18] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); } - } - - /** - * @exception ParseException - * exception during the parse - */ - /* see http://www.w3.org/TR/css3-mediaqueries/ */ - final public void media() throws ParseException { - boolean start = false; - String ret; - MediaListImpl ml = new MediaListImpl(); - try { - jj_consume_token(MEDIA_SYM); - label_23: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[30] = jj_gen; - break label_23; - } - jj_consume_token(S); - } - mediaStatement(ml); - start = true; - documentHandler.startMedia(ml); - jj_consume_token(LBRACE); - label_24: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[31] = jj_gen; - break label_24; - } - jj_consume_token(S); - } - label_25: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case CDO: - case LBRACE: - case DASHMATCH: - case INCLUDES: - case PLUS: - case MINUS: - case COMMA: - case SEMICOLON: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case NONASCII: - case DEBUG_SYM: - case WARN_SYM: - case STRING: - case IDENT: - case NUMBER: - case URL: - case PERCENTAGE: - case HASH: - case IMPORT_SYM: - case MEDIA_SYM: - case CHARSET_SYM: - case PAGE_SYM: - case FONT_FACE_SYM: - case ATKEYWORD: - case IMPORTANT_SYM: - case UNICODERANGE: - case FUNCTION: - case UNKNOWN: - ; - break; - default: - jj_la1[32] = jj_gen; - break label_25; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case DEBUG_SYM: - case WARN_SYM: - debuggingDirective(); - break; - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case IDENT: - case HASH: - styleRule(); - break; - case CDO: - case LBRACE: - case DASHMATCH: - case INCLUDES: - case MINUS: - case COMMA: - case SEMICOLON: - case NONASCII: - case STRING: - case NUMBER: - case URL: - case PERCENTAGE: - case IMPORT_SYM: - case MEDIA_SYM: - case CHARSET_SYM: - case PAGE_SYM: - case FONT_FACE_SYM: - case ATKEYWORD: - case IMPORTANT_SYM: - case UNICODERANGE: - case FUNCTION: - case UNKNOWN: - skipUnknownRule(); - break; - default: - jj_la1[33] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - jj_consume_token(RBRACE); - label_26: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[34] = jj_gen; - break label_26; - } - jj_consume_token(S); - } - } catch (ParseException e) { - reportError(getLocator(), e); - skipStatement(); - // reportWarningSkipText(getLocator(), skipStatement()); - - } finally { - if (start) { - documentHandler.endMedia(ml); - } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + ; + break; + default: + jj_la1[19] = jj_gen; + break label_14; } - } - - final public void mediaStatement(MediaListImpl ml) throws ParseException { - Token t; - t = getToken(1); - // loop over comma separated parts, add each to ml - while ((t.kind != LBRACE) && (t.kind != EOF) && (t.kind != SEMICOLON)) { - StringBuffer s = new StringBuffer(); - s.append(getToken(0).image); - while ((t.kind != COMMA) && (t.kind != LBRACE) && (t.kind != EOF) - && (t.kind != SEMICOLON)) { - s.append(t.image); - getNextToken(); - t = getToken(1); - } - if (t.kind == COMMA) { - // skip the comma and the token before it that is still the - // active token - getNextToken(); - getNextToken(); - t = getToken(1); - } - String str = s.toString().trim(); - if (str.length() > 0) { - ml.addItem(str); - } + } + label_15: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[20] = jj_gen; + break label_15; + } + jj_consume_token(S); + } + start = true; documentHandler.startKeyFrames(keyframeName, animationname); + jj_consume_token(LBRACE); + label_16: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[21] = jj_gen; + break label_16; + } + jj_consume_token(S); + } + label_17: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case TO: + case FROM: + case CONTENT_SYM: + case PERCENTAGE: + ; + break; + default: + jj_la1[22] = jj_gen; + break label_17; } - } - - /** - * @exception ParseException - * exception during the parse - */ - final public String medium() throws ParseException { - Token n; - n = jj_consume_token(IDENT); - { - if (true) { - return convertIdent(n.image); - } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case TO: + case FROM: + case PERCENTAGE: + keyframeSelector(); + break; + case CONTENT_SYM: + contentDirective(); + break; + default: + jj_la1[23] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + jj_consume_token(RBRACE); + label_18: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[24] = jj_gen; + break label_18; + } + jj_consume_token(S); + } + } catch (ParseException e) { + reportError(getLocator(), e); + skipStatement(); + } finally { + if (start) { + documentHandler.endKeyFrames(); + } + } + } + + final public void keyframeSelector() throws ParseException { + Token n; + String selector = ""; + boolean start = false; + try { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case FROM: + n = jj_consume_token(FROM); + break; + case TO: + n = jj_consume_token(TO); + break; + case PERCENTAGE: + n = jj_consume_token(PERCENTAGE); + break; + default: + jj_la1[25] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + selector += n.image; + label_19: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[26] = jj_gen; + break label_19; + } + jj_consume_token(S); + } + label_20: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COMMA: + ; + break; + default: + jj_la1[27] = jj_gen; + break label_20; } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public void page() throws ParseException { - boolean start = false; - Token n = null; - String page = null; - String pseudo = null; - try { - jj_consume_token(PAGE_SYM); - label_27: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[35] = jj_gen; - break label_27; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IDENT: - n = jj_consume_token(IDENT); - label_28: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[36] = jj_gen; - break label_28; - } - jj_consume_token(S); - } - break; - default: - jj_la1[37] = jj_gen; - ; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COLON: - pseudo = pseudo_page(); - break; - default: - jj_la1[38] = jj_gen; - ; - } - if (n != null) { - page = convertIdent(n.image); - } - jj_consume_token(LBRACE); - label_29: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[39] = jj_gen; - break label_29; - } - jj_consume_token(S); - } - start = true; - documentHandler.startPage(page, pseudo); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - declaration(); - break; - default: - jj_la1[40] = jj_gen; - ; - } - label_30: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case SEMICOLON: - ; - break; - default: - jj_la1[41] = jj_gen; - break label_30; - } - jj_consume_token(SEMICOLON); - label_31: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[42] = jj_gen; - break label_31; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - declaration(); - break; - default: - jj_la1[43] = jj_gen; - ; - } - } - jj_consume_token(RBRACE); - label_32: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[44] = jj_gen; - break label_32; - } - jj_consume_token(S); - } - } catch (ParseException e) { - if (errorHandler != null) { - LocatorImpl li = new LocatorImpl(this, - e.currentToken.next.beginLine, - e.currentToken.next.beginColumn - 1); - reportError(li, e); - skipStatement(); - // reportWarningSkipText(li, skipStatement()); - } else { - skipStatement(); - } - } finally { - if (start) { - documentHandler.endPage(page, pseudo); - } + jj_consume_token(COMMA); + label_21: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[28] = jj_gen; + break label_21; + } + jj_consume_token(S); } - } - - final public String pseudo_page() throws ParseException { - Token n; - jj_consume_token(COLON); - n = jj_consume_token(IDENT); - label_33: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[45] = jj_gen; - break label_33; - } - jj_consume_token(S); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case FROM: + n = jj_consume_token(FROM); + break; + case TO: + n = jj_consume_token(TO); + break; + case PERCENTAGE: + n = jj_consume_token(PERCENTAGE); + break; + default: + jj_la1[29] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); } - { - if (true) { - return convertIdent(n.image); - } + selector += (", " + n.image); + label_22: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[30] = jj_gen; + break label_22; + } + jj_consume_token(S); + } + } + jj_consume_token(LBRACE); + label_23: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[31] = jj_gen; + break label_23; + } + jj_consume_token(S); + } + start = true; + documentHandler.startKeyframeSelector(selector); + label_24: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case INCLUDE_SYM: + case DEBUG_SYM: + case WARN_SYM: + case EACH_SYM: + case IF_SYM: + case EXTEND_SYM: + case CONTENT_SYM: + case MICROSOFT_RULE: + case IDENT: + case VARIABLE: + case HASH: + case MEDIA_SYM: + case KEY_FRAME_SYM: + case ATKEYWORD: + ; + break; + default: + jj_la1[32] = jj_gen; + break label_24; } - throw new Error("Missing return statement in function"); - } - - final public void fontFace() throws ParseException { - boolean start = false; - try { - jj_consume_token(FONT_FACE_SYM); - label_34: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[46] = jj_gen; - break label_34; - } - jj_consume_token(S); - } - jj_consume_token(LBRACE); - label_35: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[47] = jj_gen; - break label_35; - } - jj_consume_token(S); - } - start = true; - documentHandler.startFontFace(); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - declaration(); - break; - default: - jj_la1[48] = jj_gen; - ; - } - label_36: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case SEMICOLON: - ; - break; - default: - jj_la1[49] = jj_gen; - break label_36; - } - jj_consume_token(SEMICOLON); - label_37: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[50] = jj_gen; - break label_37; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - declaration(); - break; - default: - jj_la1[51] = jj_gen; - ; - } - } - jj_consume_token(RBRACE); - label_38: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[52] = jj_gen; - break label_38; - } - jj_consume_token(S); - } - } catch (ParseException e) { - reportError(getLocator(), e); - skipStatement(); - // reportWarningSkipText(getLocator(), skipStatement()); - - } finally { - if (start) { - documentHandler.endFontFace(); - } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case INCLUDE_SYM: + case DEBUG_SYM: + case WARN_SYM: + case EACH_SYM: + case IF_SYM: + case EXTEND_SYM: + case CONTENT_SYM: + case IDENT: + case VARIABLE: + case HASH: + case MEDIA_SYM: + case KEY_FRAME_SYM: + case ATKEYWORD: + ifContentStatement(); + break; + case MICROSOFT_RULE: + microsoftExtension(); + break; + default: + jj_la1[33] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + jj_consume_token(RBRACE); + label_25: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[34] = jj_gen; + break label_25; } - } + jj_consume_token(S); + } + } catch (ThrowedParseException e) { + if (errorHandler != null) { + LocatorImpl li = new LocatorImpl(this, + e.e.currentToken.next.beginLine, + e.e.currentToken.next.beginColumn-1); + reportError(li, e.e); + } + } catch (ParseException e) { + reportError(getLocator(), e); + skipStatement(); + // reportWarningSkipText(getLocator(), skipStatement()); - /** - * @exception ParseException - * exception during the parse - */ - final public void atRuleDeclaration() throws ParseException { - Token n; - String ret; - n = jj_consume_token(ATKEYWORD); - ret = skipStatement(); - if ((ret != null) && (ret.charAt(0) == '@')) { - documentHandler.unrecognizedRule(ret); - } else { - reportWarningSkipText(getLocator(), ret); + } catch (TokenMgrError e) { + reportWarningSkipText(getLocator(), skipStatement()); + } finally { + if (start) { + documentHandler.endKeyframeSelector(); } } + } - final public void skipUnknownRule() throws ParseException { - Token n; - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case ATKEYWORD: - n = jj_consume_token(ATKEYWORD); - break; +/** + * @exception ParseException exception during the parse + */ +/* see http://www.w3.org/TR/css3-mediaqueries/ */ + final public void media() throws ParseException { + boolean start = false; + String ret; + MediaListImpl ml = new MediaListImpl(); + try { + jj_consume_token(MEDIA_SYM); + label_26: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[35] = jj_gen; + break label_26; + } + jj_consume_token(S); + } + mediaStatement(ml); + start = true; documentHandler.startMedia(ml); + jj_consume_token(LBRACE); + label_27: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[36] = jj_gen; + break label_27; + } + jj_consume_token(S); + } + label_28: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case CDO: - n = jj_consume_token(CDO); - break; - case CHARSET_SYM: - n = jj_consume_token(CHARSET_SYM); - break; - case COMMA: - n = jj_consume_token(COMMA); - break; + case LBRACE: case DASHMATCH: - n = jj_consume_token(DASHMATCH); - break; - case FONT_FACE_SYM: - n = jj_consume_token(FONT_FACE_SYM); - break; - case FUNCTION: - n = jj_consume_token(FUNCTION); - break; - case IMPORTANT_SYM: - n = jj_consume_token(IMPORTANT_SYM); - break; - case IMPORT_SYM: - n = jj_consume_token(IMPORT_SYM); - break; case INCLUDES: - n = jj_consume_token(INCLUDES); - break; - case LBRACE: - n = jj_consume_token(LBRACE); - break; - case MEDIA_SYM: - n = jj_consume_token(MEDIA_SYM); - break; + case PLUS: + case MINUS: + case COMMA: + case SEMICOLON: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: case NONASCII: - n = jj_consume_token(NONASCII); - break; + case DEBUG_SYM: + case WARN_SYM: + case STRING: + case IDENT: case NUMBER: - n = jj_consume_token(NUMBER); - break; - case PAGE_SYM: - n = jj_consume_token(PAGE_SYM); - break; + case URL: case PERCENTAGE: - n = jj_consume_token(PERCENTAGE); - break; - case STRING: - n = jj_consume_token(STRING); - break; + case HASH: + case IMPORT_SYM: + case MEDIA_SYM: + case CHARSET_SYM: + case PAGE_SYM: + case FONT_FACE_SYM: + case ATKEYWORD: + case IMPORTANT_SYM: case UNICODERANGE: - n = jj_consume_token(UNICODERANGE); - break; - case URL: - n = jj_consume_token(URL); - break; - case SEMICOLON: - n = jj_consume_token(SEMICOLON); - break; - case MINUS: - n = jj_consume_token(MINUS); - break; + case FUNCTION: case UNKNOWN: - n = jj_consume_token(UNKNOWN); - break; - default: - jj_la1[53] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - String ret; - Locator loc = getLocator(); - ret = skipStatement(); - if ((ret != null) && (n.image.charAt(0) == '@')) { - documentHandler.unrecognizedRule(ret); - } else { - reportWarningSkipText(loc, ret); - } - } - - /** - * @exception ParseException - * exception during the parse - */ - final public char combinator() throws ParseException { - char connector = ' '; - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - connector = combinatorChar(); - break; - case S: - jj_consume_token(S); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - connector = combinatorChar(); - break; - default: - jj_la1[54] = jj_gen; - ; - } - break; + ; + break; default: - jj_la1[55] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - { - if (true) { - return connector; - } + jj_la1[37] = jj_gen; + break label_28; } - throw new Error("Missing return statement in function"); - } - - /** to refactor combinator and reuse in selector(). */ - final public char combinatorChar() throws ParseException { - Token t; - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case DEBUG_SYM: + case WARN_SYM: + debuggingDirective(); + break; case PLUS: - t = jj_consume_token(PLUS); - break; case PRECEDES: - t = jj_consume_token(PRECEDES); - break; case SIBLING: - t = jj_consume_token(SIBLING); - break; - default: - jj_la1[56] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - label_39: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[57] = jj_gen; - break label_39; - } - jj_consume_token(S); - } - { - if (true) { - return t.image.charAt(0); - } - } - throw new Error("Missing return statement in function"); - } - - final public void microsoftExtension() throws ParseException { - Token n; - String name = ""; - String value = ""; - // This is not really taking the syntax of filter rules into account - n = jj_consume_token(MICROSOFT_RULE); - label_40: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[58] = jj_gen; - break label_40; - } - jj_consume_token(S); - } - name = n.image; - jj_consume_token(COLON); - label_41: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IDENT: - n = jj_consume_token(IDENT); - value += n.image; - break; - case NUMBER: - n = jj_consume_token(NUMBER); - value += n.image; - break; - case STRING: - n = jj_consume_token(STRING); - value += n.image; - break; - case COMMA: - n = jj_consume_token(COMMA); - value += n.image; - break; - case INTERPOLATION: - n = jj_consume_token(INTERPOLATION); - value += n.image; - break; - case COLON: - n = jj_consume_token(COLON); - value += n.image; - break; - case FUNCTION: - n = jj_consume_token(FUNCTION); - value += n.image; - break; - case RPARAN: - n = jj_consume_token(RPARAN); - value += n.image; - break; - case EQ: - n = jj_consume_token(EQ); - value += n.image; - break; - case DOT: - n = jj_consume_token(DOT); - value += n.image; - break; - case S: - n = jj_consume_token(S); - if (value.lastIndexOf(' ') != value.length() - 1) { - value += n.image; - } - break; - default: - jj_la1[59] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - case EQ: - case COMMA: - case DOT: - case RPARAN: - case COLON: - case INTERPOLATION: - case STRING: - case IDENT: - case NUMBER: - case FUNCTION: - ; - break; - default: - jj_la1[60] = jj_gen; - break label_41; - } - } - jj_consume_token(SEMICOLON); - label_42: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[61] = jj_gen; - break label_42; - } - jj_consume_token(S); - } - documentHandler.microsoftDirective(name, value); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public String property() throws ParseException { - Token t; - String s = ""; - label_43: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IDENT: - t = jj_consume_token(IDENT); - s += t.image; - break; - case INTERPOLATION: - t = jj_consume_token(INTERPOLATION); - s += t.image; - break; - default: - jj_la1[62] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - ; - break; - default: - jj_la1[63] = jj_gen; - break label_43; - } - } - label_44: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[64] = jj_gen; - break label_44; - } - jj_consume_token(S); - } - { - if (true) { - return s; - } - } - throw new Error("Missing return statement in function"); - } - - final public String variableName() throws ParseException { - Token n; - n = jj_consume_token(VARIABLE); - label_45: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[65] = jj_gen; - break label_45; - } - jj_consume_token(S); - } - { - if (true) { - return convertIdent(n.image.substring(1)); - } - } - throw new Error("Missing return statement in function"); - } - - final public String functionName() throws ParseException { - Token n; - n = jj_consume_token(FUNCTION); - label_46: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[66] = jj_gen; - break label_46; - } - jj_consume_token(S); - } - { - if (true) { - return convertIdent(n.image.substring(0, n.image.length() - 1)); - } - } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public void styleRule() throws ParseException { - boolean start = false; - ArrayList l = null; - Token save; - Locator loc; - try { - l = selectorList(); - save = token; - jj_consume_token(LBRACE); - label_47: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[67] = jj_gen; - break label_47; - } - jj_consume_token(S); - } - start = true; - documentHandler.startSelector(l); - label_48: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case INCLUDE_SYM: - case DEBUG_SYM: - case WARN_SYM: - case EACH_SYM: - case IF_SYM: - case EXTEND_SYM: - case CONTENT_SYM: - case MICROSOFT_RULE: - case IDENT: - case VARIABLE: - case HASH: - case IMPORT_SYM: - case MEDIA_SYM: - case KEY_FRAME_SYM: - case ATKEYWORD: - ; - break; - default: - jj_la1[68] = jj_gen; - break label_48; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case INCLUDE_SYM: - case DEBUG_SYM: - case WARN_SYM: - case EACH_SYM: - case IF_SYM: - case EXTEND_SYM: - case CONTENT_SYM: - case IDENT: - case VARIABLE: - case HASH: - case MEDIA_SYM: - case KEY_FRAME_SYM: - case ATKEYWORD: - ifContentStatement(); - break; - case MICROSOFT_RULE: - microsoftExtension(); - break; - case IMPORT_SYM: - importDeclaration(); - break; - default: - jj_la1[69] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - jj_consume_token(RBRACE); - label_49: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[70] = jj_gen; - break label_49; - } - jj_consume_token(S); - } - } catch (ThrowedParseException e) { - if (errorHandler != null) { - LocatorImpl li = new LocatorImpl(this, - e.e.currentToken.next.beginLine, - e.e.currentToken.next.beginColumn - 1); - reportError(li, e.e); - } - } catch (ParseException e) { - reportError(getLocator(), e); - skipStatement(); - // reportWarningSkipText(getLocator(), skipStatement()); - - } catch (TokenMgrError e) { - reportWarningSkipText(getLocator(), skipStatement()); - } finally { - if (start) { - documentHandler.endSelector(); - } - } - } - - final public ArrayList selectorList() throws ParseException { - ArrayList selectors = new ArrayList(); - String selector; - selector = selector(); - label_50: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COMMA: - ; - break; - default: - jj_la1[71] = jj_gen; - break label_50; - } - jj_consume_token(COMMA); - label_51: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[72] = jj_gen; - break label_51; - } - jj_consume_token(S); - } - selectors.add(selector); - selector = selector(); - } - selectors.add(selector); - { - if (true) { - return selectors; - } - } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public String selector() throws ParseException { - String selector = null; - char comb; - try { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case IDENT: - case HASH: - selector = simple_selector(null, ' '); - break; - case PLUS: - case PRECEDES: - case SIBLING: - comb = combinatorChar(); - selector = simple_selector(selector, comb); - break; - default: - jj_la1[73] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - label_52: while (true) { - if (jj_2_2(2)) { - ; - } else { - break label_52; - } - comb = combinator(); - selector = simple_selector(selector, comb); - } - label_53: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[74] = jj_gen; - break label_53; - } - jj_consume_token(S); - } - { - if (true) { - return selector; - } - } - } catch (ParseException e) { - /* - * Token t = getToken(1); StringBuffer s = new StringBuffer(); - * s.append(getToken(0).image); while ((t.kind != COMMA) && (t.kind - * != SEMICOLON) && (t.kind != LBRACE) && (t.kind != EOF)) { - * s.append(t.image); getNextToken(); t = getToken(1); } - * reportWarningSkipText(getLocator(), s.toString()); - */ - Token t = getToken(1); - while ((t.kind != COMMA) && (t.kind != SEMICOLON) - && (t.kind != LBRACE) && (t.kind != EOF)) { - getNextToken(); - t = getToken(1); - } - - { - if (true) { - throw new ThrowedParseException(e); - } - } - } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public String simple_selector(String selector, char comb) - throws ParseException { - String simple_current = null; - String cond = null; - - pseudoElt = null; - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { + case LBRACKET: case ANY: case PARENT: + case DOT: + case COLON: case INTERPOLATION: case IDENT: - simple_current = element_name(); - label_54: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case LBRACKET: - case DOT: - case COLON: - case HASH: - ; - break; - default: - jj_la1[75] = jj_gen; - break label_54; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case HASH: - cond = hash(cond); - break; - case DOT: - cond = _class(cond); - break; - case LBRACKET: - cond = attrib(cond); - break; - case COLON: - cond = pseudo(cond); - break; - default: - jj_la1[76] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - break; case HASH: - cond = hash(cond); - label_55: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case LBRACKET: - case DOT: - case COLON: - ; - break; - default: - jj_la1[77] = jj_gen; - break label_55; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case DOT: - cond = _class(cond); - break; - case LBRACKET: - cond = attrib(cond); - break; - case COLON: - cond = pseudo(cond); - break; - default: - jj_la1[78] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - break; - case DOT: - cond = _class(cond); - label_56: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case LBRACKET: - case DOT: - case COLON: - case HASH: - ; - break; - default: - jj_la1[79] = jj_gen; - break label_56; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case HASH: - cond = hash(cond); - break; - case DOT: - cond = _class(cond); - break; - case LBRACKET: - cond = attrib(cond); - break; - case COLON: - cond = pseudo(cond); - break; - default: - jj_la1[80] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - break; - case COLON: - cond = pseudo(cond); - label_57: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case LBRACKET: - case DOT: - case COLON: - case HASH: - ; - break; - default: - jj_la1[81] = jj_gen; - break label_57; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case HASH: - cond = hash(cond); - break; - case DOT: - cond = _class(cond); - break; - case LBRACKET: - cond = attrib(cond); - break; - case COLON: - cond = pseudo(cond); - break; - default: - jj_la1[82] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - break; - case LBRACKET: - cond = attrib(cond); - label_58: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case LBRACKET: - case DOT: - case COLON: - case HASH: - ; - break; - default: - jj_la1[83] = jj_gen; - break label_58; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case HASH: - cond = hash(cond); - break; - case DOT: - cond = _class(cond); - break; - case LBRACKET: - cond = attrib(cond); - break; - case COLON: - cond = pseudo(cond); - break; - default: - jj_la1[84] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - break; - default: - jj_la1[85] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - if (simple_current == null) { - simple_current = ""; - } - if (cond != null) { - simple_current = simple_current + cond; - } - StringBuilder builder = new StringBuilder(); - switch (comb) { - case ' ': - if (selector != null) { - builder.append(selector).append(" "); - } - break; - case '+': - case '>': - case '~': - if (selector != null) { - builder.append(selector).append(" "); - } - builder.append(comb).append(" "); - break; - default: { - if (true) { - throw new ParseException("invalid state. send a bug report"); - } - } - } - builder.append(simple_current); - selector = builder.toString(); - - if (pseudoElt != null) { - selector = selector + pseudoElt; - } - { - if (true) { - return selector; - } - } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public String _class(String pred) throws ParseException { - Token t; - String s = "."; - jj_consume_token(DOT); - label_59: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IDENT: - t = jj_consume_token(IDENT); - s += t.image; - break; - case INTERPOLATION: - t = jj_consume_token(INTERPOLATION); - s += t.image; - break; - default: - jj_la1[86] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - ; - break; - default: - jj_la1[87] = jj_gen; - break label_59; - } - } - if (pred == null) { - { - if (true) { - return s; - } - } - } else { - { - if (true) { - return pred + s; - } - } - } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public String element_name() throws ParseException { - Token t; - String s = ""; - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - label_60: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IDENT: - t = jj_consume_token(IDENT); - s += t.image; - break; - case INTERPOLATION: - t = jj_consume_token(INTERPOLATION); - s += t.image; - break; - default: - jj_la1[88] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - ; - break; - default: - jj_la1[89] = jj_gen; - break label_60; - } - } - { - if (true) { - return s; - } - } - break; - case ANY: - jj_consume_token(ANY); - { - if (true) { - return "*"; - } - } - break; - case PARENT: - jj_consume_token(PARENT); - { - if (true) { - return "&"; - } - } - break; - default: - jj_la1[90] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public String attrib(String pred) throws ParseException { - int cases = 0; - Token att = null; - Token val = null; - String attValue = null; - jj_consume_token(LBRACKET); - label_61: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[91] = jj_gen; - break label_61; - } - jj_consume_token(S); - } - att = jj_consume_token(IDENT); - label_62: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[92] = jj_gen; - break label_62; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { + styleRule(); + break; + case CDO: + case LBRACE: case DASHMATCH: - case CARETMATCH: - case DOLLARMATCH: - case STARMATCH: case INCLUDES: - case EQ: - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case EQ: - jj_consume_token(EQ); - cases = 1; - break; - case INCLUDES: - jj_consume_token(INCLUDES); - cases = 2; - break; - case DASHMATCH: - jj_consume_token(DASHMATCH); - cases = 3; - break; - case CARETMATCH: - jj_consume_token(CARETMATCH); - cases = 4; - break; - case DOLLARMATCH: - jj_consume_token(DOLLARMATCH); - cases = 5; - break; - case STARMATCH: - jj_consume_token(STARMATCH); - cases = 6; - break; - default: - jj_la1[93] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - label_63: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[94] = jj_gen; - break label_63; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IDENT: - val = jj_consume_token(IDENT); - attValue = val.image; - break; - case STRING: - val = jj_consume_token(STRING); - attValue = val.image; - break; - default: - jj_la1[95] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - label_64: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[96] = jj_gen; - break label_64; - } - jj_consume_token(S); - } - break; - default: - jj_la1[97] = jj_gen; - ; - } - jj_consume_token(RBRACKET); - String name = convertIdent(att.image); - String c; - switch (cases) { - case 0: - c = name; - break; - case 1: - c = name + "=" + attValue; - break; - case 2: - c = name + "~=" + attValue; - break; - case 3: - c = name + "|=" + attValue; - break; - case 4: - c = name + "^=" + attValue; - break; - case 5: - c = name + "$=" + attValue; - break; - case 6: - c = name + "*=" + attValue; - break; - default: - // never reached. - c = null; - } - c = "[" + c + "]"; - if (pred == null) { - { - if (true) { - return c; - } - } - } else { - { - if (true) { - return pred + c; - } - } - } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public String pseudo(String pred) throws ParseException { - Token n; - Token param; - String d; - boolean isPseudoElement = false; - jj_consume_token(COLON); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COLON: - jj_consume_token(COLON); - isPseudoElement = true; - break; - default: - jj_la1[98] = jj_gen; - ; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IDENT: - n = jj_consume_token(IDENT); - String s = ":" + convertIdent(n.image); - if (isPseudoElement) { - if (pseudoElt != null) { - { - if (true) { - throw new CSSParseException( - "duplicate pseudo element definition " + s, - getLocator()); - } - } - } else { - pseudoElt = ":" + s; - { - if (true) { - return pred; - } - } - } - } else { - String c = s; - if (pred == null) { - { - if (true) { - return c; - } - } - } else { - { - if (true) { - return pred + c; - } - } - } - } - break; - case FUNCTION: - n = jj_consume_token(FUNCTION); - label_65: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[99] = jj_gen; - break label_65; - } - jj_consume_token(S); - } - d = skipStatementUntilRightParan(); - jj_consume_token(RPARAN); - // accept anything between function and a right parenthesis - String f = convertIdent(n.image); - String colons = isPseudoElement ? "::" : ":"; - String pseudofn = colons + f + d + ")"; - if (pred == null) { - { - if (true) { - return pseudofn; - } - } - } else { - { - if (true) { - return pred + pseudofn; - } - } - } - break; - default: - jj_la1[100] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public String hash(String pred) throws ParseException { - Token n; - n = jj_consume_token(HASH); - String d = n.image; - if (pred == null) { - { - if (true) { - return d; - } - } - } else { - { - if (true) { - return pred + d; - } - } - } - throw new Error("Missing return statement in function"); - } - - final public void variable() throws ParseException { - String name; - LexicalUnitImpl exp = null; - boolean guarded = false; - String raw; - try { - name = variableName(); - jj_consume_token(COLON); - label_66: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[101] = jj_gen; - break label_66; - } - jj_consume_token(S); - } - exp = expr(); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case GUARDED_SYM: - guarded = guarded(); - break; - default: - jj_la1[102] = jj_gen; - ; - } - label_67: while (true) { - jj_consume_token(SEMICOLON); - label_68: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[103] = jj_gen; - break label_68; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case SEMICOLON: - ; - break; - default: - jj_la1[104] = jj_gen; - break label_67; - } - } - documentHandler.variable(name, exp, guarded); - } catch (JumpException e) { - skipAfterExpression(); - } catch (NumberFormatException e) { - if (errorHandler != null) { - errorHandler.error(new CSSParseException("Invalid number " - + e.getMessage(), getLocator(), e)); - } - reportWarningSkipText(getLocator(), skipAfterExpression()); - } catch (ParseException e) { - if (errorHandler != null) { - if (e.currentToken != null) { - LocatorImpl li = new LocatorImpl(this, - e.currentToken.next.beginLine, - e.currentToken.next.beginColumn - 1); - reportError(li, e); - } else { - reportError(getLocator(), e); - } - skipAfterExpression(); - } else { - skipAfterExpression(); - } - } - } - - final public void controlDirective() throws ParseException { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IF_SYM: - ifDirective(); - break; - case EACH_SYM: - eachDirective(); - break; - default: - jj_la1[105] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - - final public void ifContentStatement() throws ParseException { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case CONTENT_SYM: - contentDirective(); - break; - case INCLUDE_SYM: - includeDirective(); - break; - case MEDIA_SYM: - media(); - break; - case EXTEND_SYM: - extendDirective(); - break; - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case DEBUG_SYM: - case WARN_SYM: - case IDENT: - case HASH: - styleRuleOrDeclarationOrNestedProperties(); - break; - case KEY_FRAME_SYM: - keyframes(); - break; - default: - jj_la1[106] = jj_gen; - if (jj_2_3(2147483647)) { - variable(); - } else { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case VARIABLE: - listModifyDirective(); - break; - case EACH_SYM: - case IF_SYM: - controlDirective(); - break; - case ATKEYWORD: - atRuleDeclaration(); - break; - default: - jj_la1[107] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - } - } - - final public void ifDirective() throws ParseException { - Token n = null; - String s = null; - String evaluator = ""; - jj_consume_token(IF_SYM); - label_69: while (true) { - s = booleanExpressionToken(); - evaluator += s; - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - case EQ: - case PLUS: - case MINUS: - case PRECEDES: - case SUCCEEDS: - case DIV: - case ANY: - case LPARAN: - case RPARAN: - case COMPARE: - case OR: - case AND: - case NOT_EQ: - case IDENT: - case NUMBER: - case VARIABLE: - case CONTAINS: - ; - break; - default: - jj_la1[108] = jj_gen; - break label_69; - } - } - jj_consume_token(LBRACE); - label_70: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[109] = jj_gen; - break label_70; - } - jj_consume_token(S); - } - documentHandler.startIfElseDirective(); - documentHandler.ifDirective(evaluator); - label_71: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case INCLUDE_SYM: - case DEBUG_SYM: - case WARN_SYM: - case EACH_SYM: - case IF_SYM: - case EXTEND_SYM: - case CONTENT_SYM: - case IDENT: - case VARIABLE: - case HASH: - case MEDIA_SYM: - case FONT_FACE_SYM: - case KEY_FRAME_SYM: - case ATKEYWORD: - ; - break; - default: - jj_la1[110] = jj_gen; - break label_71; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case INCLUDE_SYM: - case DEBUG_SYM: - case WARN_SYM: - case EACH_SYM: - case IF_SYM: - case EXTEND_SYM: - case CONTENT_SYM: - case IDENT: - case VARIABLE: - case HASH: - case MEDIA_SYM: - case KEY_FRAME_SYM: - case ATKEYWORD: - ifContentStatement(); - break; - case FONT_FACE_SYM: - fontFace(); - break; - default: - jj_la1[111] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - jj_consume_token(RBRACE); - label_72: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[112] = jj_gen; - break label_72; - } - jj_consume_token(S); - } - label_73: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case ELSE_SYM: - ; - break; - default: - jj_la1[113] = jj_gen; - break label_73; - } - elseDirective(); - } - documentHandler.endIfElseDirective(); - } - - final public void elseDirective() throws ParseException { - String evaluator = ""; - Token n = null; - String s = null; - jj_consume_token(ELSE_SYM); - label_74: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[114] = jj_gen; - break label_74; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IF: - jj_consume_token(IF); - label_75: while (true) { - s = booleanExpressionToken(); - evaluator += s; - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - case EQ: - case PLUS: - case MINUS: - case PRECEDES: - case SUCCEEDS: - case DIV: - case ANY: - case LPARAN: - case RPARAN: - case COMPARE: - case OR: - case AND: - case NOT_EQ: - case IDENT: - case NUMBER: - case VARIABLE: - case CONTAINS: - ; - break; - default: - jj_la1[115] = jj_gen; - break label_75; - } - } - break; - default: - jj_la1[116] = jj_gen; - ; - } - jj_consume_token(LBRACE); - label_76: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[117] = jj_gen; - break label_76; - } - jj_consume_token(S); - } - if (!evaluator.trim().equals("")) { - documentHandler.ifDirective(evaluator); - } else { - documentHandler.elseDirective(); - } - label_77: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case INCLUDE_SYM: - case DEBUG_SYM: - case WARN_SYM: - case EACH_SYM: - case IF_SYM: - case EXTEND_SYM: - case CONTENT_SYM: - case IDENT: - case VARIABLE: - case HASH: - case MEDIA_SYM: - case FONT_FACE_SYM: - case KEY_FRAME_SYM: - case ATKEYWORD: - ; - break; - default: - jj_la1[118] = jj_gen; - break label_77; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case INCLUDE_SYM: - case DEBUG_SYM: - case WARN_SYM: - case EACH_SYM: - case IF_SYM: - case EXTEND_SYM: - case CONTENT_SYM: - case IDENT: - case VARIABLE: - case HASH: - case MEDIA_SYM: - case KEY_FRAME_SYM: - case ATKEYWORD: - ifContentStatement(); - break; - case FONT_FACE_SYM: - fontFace(); - break; - default: - jj_la1[119] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - jj_consume_token(RBRACE); - label_78: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[120] = jj_gen; - break label_78; - } - jj_consume_token(S); - } - } - - final public String booleanExpressionToken() throws ParseException { - Token n = null; - String s = null; - if (jj_2_4(2147483647)) { - s = containsDirective(); - } else { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case VARIABLE: - n = jj_consume_token(VARIABLE); - break; - case IDENT: - n = jj_consume_token(IDENT); - break; - case NUMBER: - n = jj_consume_token(NUMBER); - break; - case LPARAN: - n = jj_consume_token(LPARAN); - break; - case RPARAN: - n = jj_consume_token(RPARAN); - break; - case PLUS: - n = jj_consume_token(PLUS); - break; - case MINUS: - n = jj_consume_token(MINUS); - break; - case DIV: - n = jj_consume_token(DIV); - break; - case ANY: - n = jj_consume_token(ANY); - break; - case COMPARE: - n = jj_consume_token(COMPARE); - break; - case EQ: - n = jj_consume_token(EQ); - break; - case PRECEDES: - n = jj_consume_token(PRECEDES); - break; - case SUCCEEDS: - n = jj_consume_token(SUCCEEDS); - break; - case OR: - n = jj_consume_token(OR); - break; - case AND: - n = jj_consume_token(AND); - break; - case S: - n = jj_consume_token(S); - break; - case NOT_EQ: - n = jj_consume_token(NOT_EQ); - break; - default: - jj_la1[121] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - if (n != null) { - { - if (true) { - return n.image; - } - } - } else { - { - if (true) { - return s; - } - } - } - throw new Error("Missing return statement in function"); - } - - final public void eachDirective() throws ParseException { - Token var; - ArrayList list = null; - String listVariable = null; - jj_consume_token(EACH_SYM); - label_79: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[122] = jj_gen; - break label_79; - } - jj_consume_token(S); - } - var = jj_consume_token(VARIABLE); - label_80: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[123] = jj_gen; - break label_80; - } - jj_consume_token(S); - } - jj_consume_token(EACH_IN); - label_81: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[124] = jj_gen; - break label_81; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IDENT: - list = stringList(); - documentHandler.startEachDirective(var.image, list); - break; - case VARIABLE: - listVariable = variableName(); - documentHandler.startEachDirective(var.image, listVariable); - break; - default: - jj_la1[125] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - jj_consume_token(LBRACE); - label_82: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[126] = jj_gen; - break label_82; - } - jj_consume_token(S); - } - label_83: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case INCLUDE_SYM: - case DEBUG_SYM: - case WARN_SYM: - case EACH_SYM: - case IF_SYM: - case EXTEND_SYM: - case CONTENT_SYM: - case IDENT: - case VARIABLE: - case HASH: - case MEDIA_SYM: - case KEY_FRAME_SYM: - case ATKEYWORD: - ; - break; - default: - jj_la1[127] = jj_gen; - break label_83; - } - ifContentStatement(); - } - jj_consume_token(RBRACE); - label_84: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[128] = jj_gen; - break label_84; - } - jj_consume_token(S); - } - documentHandler.endEachDirective(); - } - - final public ArrayList stringList() throws ParseException { - ArrayList strings = new ArrayList(); - Token input; - input = jj_consume_token(IDENT); - label_85: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[129] = jj_gen; - break label_85; - } - jj_consume_token(S); - } - strings.add(input.image); - label_86: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COMMA: - ; - break; - default: - jj_la1[130] = jj_gen; - break label_86; - } - jj_consume_token(COMMA); - label_87: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[131] = jj_gen; - break label_87; - } - jj_consume_token(S); - } - input = jj_consume_token(IDENT); - strings.add(input.image); - label_88: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[132] = jj_gen; - break label_88; - } - jj_consume_token(S); - } - } - { - if (true) { - return strings; - } - } - throw new Error("Missing return statement in function"); - } - - final public void mixinDirective() throws ParseException { - String name; - ArrayList args = null; - String body; - jj_consume_token(MIXIN_SYM); - label_89: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[133] = jj_gen; - break label_89; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - name = property(); - break; - case FUNCTION: - name = functionName(); - args = arglist(); - jj_consume_token(RPARAN); - label_90: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[134] = jj_gen; - break label_90; - } - jj_consume_token(S); - } - break; - default: - jj_la1[135] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - jj_consume_token(LBRACE); - label_91: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[136] = jj_gen; - break label_91; - } - jj_consume_token(S); - } - documentHandler.startMixinDirective(name, args); - label_92: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case INCLUDE_SYM: - case DEBUG_SYM: - case WARN_SYM: - case EACH_SYM: - case IF_SYM: - case EXTEND_SYM: - case CONTENT_SYM: - case IDENT: - case VARIABLE: - case HASH: - case MEDIA_SYM: - case PAGE_SYM: - case KEY_FRAME_SYM: - case ATKEYWORD: - ; - break; - default: - jj_la1[137] = jj_gen; - break label_92; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case INCLUDE_SYM: - case DEBUG_SYM: - case WARN_SYM: - case EACH_SYM: - case IF_SYM: - case EXTEND_SYM: - case CONTENT_SYM: - case IDENT: - case VARIABLE: - case HASH: - case MEDIA_SYM: - case KEY_FRAME_SYM: - case ATKEYWORD: - ifContentStatement(); - break; - case PAGE_SYM: - page(); - break; - default: - jj_la1[138] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - jj_consume_token(RBRACE); - label_93: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[139] = jj_gen; - break label_93; - } - jj_consume_token(S); - } - documentHandler.endMixinDirective(name, args); - } - - final public ArrayList arglist() throws ParseException { - ArrayList args = new ArrayList(); - VariableNode arg; - boolean hasNonOptionalArgument = false; - arg = mixinArg(); - label_94: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COMMA: - ; - break; - default: - jj_la1[140] = jj_gen; - break label_94; - } - jj_consume_token(COMMA); - label_95: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[141] = jj_gen; - break label_95; - } - jj_consume_token(S); - } - hasNonOptionalArgument = checkMixinForNonOptionalArguments(arg, - hasNonOptionalArgument); - args.add(arg); - arg = mixinArg(); - } - hasNonOptionalArgument = checkMixinForNonOptionalArguments(arg, - hasNonOptionalArgument); - args.add(arg); - { - if (true) { - return args; - } - } - throw new Error("Missing return statement in function"); - } - - boolean checkMixinForNonOptionalArguments(VariableNode arg, - boolean hasNonOptionalArguments) throws ParseException { - boolean currentArgHasArguments = arg.getExpr() != null - && arg.getExpr().getLexicalUnitType() == LexicalUnitImpl.SCSS_VARIABLE - && arg.getExpr().getNextLexicalUnit() != null; - - if (currentArgHasArguments) { - if (hasNonOptionalArguments) { - throw new ParseException("Sass Error: Required argument $" - + arg.getName() - + " must come before any optional arguments."); - } - return hasNonOptionalArguments; - } else { - return true; - } - } - - final public VariableNode mixinArg() throws ParseException { - String name; - Token variable = null; - LexicalUnitImpl first = null; - LexicalUnitImpl prev = null; - LexicalUnitImpl next = null; - name = variableName(); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COLON: - case VARIABLE: - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COLON: - jj_consume_token(COLON); - label_96: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[142] = jj_gen; - break label_96; - } - jj_consume_token(S); - } - first = nonVariableTerm(null); - prev = first; - label_97: while (true) { - if (jj_2_5(3)) { - ; - } else { - break label_97; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COMMA: - jj_consume_token(COMMA); - label_98: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[143] = jj_gen; - break label_98; - } - jj_consume_token(S); - } - break; - default: - jj_la1[144] = jj_gen; - ; - } - prev = nonVariableTerm(prev); - } - break; - case VARIABLE: - variable = jj_consume_token(VARIABLE); - first = LexicalUnitImpl.createVariable(token.beginLine, - token.beginColumn, prev, variable.image); - break; - default: - jj_la1[145] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - break; - default: - jj_la1[146] = jj_gen; - ; - } - VariableNode arg = new VariableNode(name, first, false); - { - if (true) { - return arg; - } - } - throw new Error("Missing return statement in function"); - } - - final public ArrayList argValuelist() - throws ParseException { - ArrayList args = new ArrayList(); - LexicalUnitImpl first = null; - LexicalUnitImpl next = null; - LexicalUnitImpl prev = null; - first = term(null); - args.add(first); - prev = first; - label_99: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case MINUS: - case DOT: - case COLON: - case TO: - case THROUGH: - case FROM: - case STRING: - case IDENT: - case NUMBER: - case URL: - case VARIABLE: - case PERCENTAGE: - case PT: - case MM: - case CM: - case PC: - case IN: - case PX: - case EMS: - case LEM: - case REM: - case EXS: - case DEG: - case RAD: - case GRAD: - case MS: - case SECOND: - case HZ: - case KHZ: - case DIMEN: - case HASH: - case UNICODERANGE: - case FUNCTION: - ; - break; - default: - jj_la1[147] = jj_gen; - break label_99; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COLON: - jj_consume_token(COLON); - label_100: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[148] = jj_gen; - break label_100; - } - jj_consume_token(S); - } - break; - default: - jj_la1[149] = jj_gen; - ; - } - next = term(prev); - prev.setNextLexicalUnit(next); - prev = next; - } - label_101: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COMMA: - ; - break; - default: - jj_la1[150] = jj_gen; - break label_101; - } - jj_consume_token(COMMA); - label_102: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[151] = jj_gen; - break label_102; - } - jj_consume_token(S); - } - first = term(null); - args.add(first); - prev = first; - label_103: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case MINUS: - case DOT: - case COLON: - case TO: - case THROUGH: - case FROM: - case STRING: - case IDENT: - case NUMBER: - case URL: - case VARIABLE: - case PERCENTAGE: - case PT: - case MM: - case CM: - case PC: - case IN: - case PX: - case EMS: - case LEM: - case REM: - case EXS: - case DEG: - case RAD: - case GRAD: - case MS: - case SECOND: - case HZ: - case KHZ: - case DIMEN: - case HASH: - case UNICODERANGE: - case FUNCTION: - ; - break; - default: - jj_la1[152] = jj_gen; - break label_103; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COLON: - jj_consume_token(COLON); - label_104: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[153] = jj_gen; - break label_104; - } - jj_consume_token(S); - } - break; - default: - jj_la1[154] = jj_gen; - ; - } - next = term(prev); - prev.setNextLexicalUnit(next); - prev = next; - } - } - { - if (true) { - return args; - } - } - throw new Error("Missing return statement in function"); - } - - final public void includeDirective() throws ParseException { - String name; - ArrayList args = null; - jj_consume_token(INCLUDE_SYM); - label_105: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[155] = jj_gen; - break label_105; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - name = property(); - break; - case VARIABLE: - name = variableName(); - name = "$" + name; - break; - case FUNCTION: - name = functionName(); - args = argValuelist(); - jj_consume_token(RPARAN); - break; - default: - jj_la1[156] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - label_106: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[157] = jj_gen; - break label_106; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case SEMICOLON: - label_107: while (true) { - jj_consume_token(SEMICOLON); - label_108: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[158] = jj_gen; - break label_108; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case SEMICOLON: - ; - break; - default: - jj_la1[159] = jj_gen; - break label_107; - } - } - documentHandler.includeDirective(name, args); - break; - case LBRACE: - jj_consume_token(LBRACE); - label_109: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[160] = jj_gen; - break label_109; - } - jj_consume_token(S); - } - documentHandler.startIncludeContentBlock(name); - label_110: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case DEBUG_SYM: - case WARN_SYM: - case IDENT: - case HASH: - ; - break; - default: - jj_la1[161] = jj_gen; - break label_110; - } - styleRuleOrDeclarationOrNestedProperties(); - } - jj_consume_token(RBRACE); - label_111: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[162] = jj_gen; - break label_111; - } - jj_consume_token(S); - } - documentHandler.endIncludeContentBlock(); - break; - default: - jj_la1[163] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - - final public String interpolation() throws ParseException { - Token n; - n = jj_consume_token(INTERPOLATION); - { - if (true) { - return n.image; - } - } - throw new Error("Missing return statement in function"); - } - - final public void listModifyDirective() throws ParseException { - String list = null; - String remove = null; - String separator = null; - String variable = null; - Token n = null; - Token type = null; - // refactor, remove those 3 LOOKAHEAD(5). - n = jj_consume_token(VARIABLE); - variable = n.image; - label_112: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[164] = jj_gen; - break label_112; - } - jj_consume_token(S); - } - jj_consume_token(COLON); - label_113: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[165] = jj_gen; - break label_113; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case APPEND: - type = jj_consume_token(APPEND); - break; - case REMOVE: - type = jj_consume_token(REMOVE); - break; - case CONTAINS: - type = jj_consume_token(CONTAINS); - break; - default: - jj_la1[166] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - label_114: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[167] = jj_gen; - break label_114; - } - jj_consume_token(S); - } - list = listModifyDirectiveArgs(0); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case RPARAN: - jj_consume_token(RPARAN); - break; - default: - jj_la1[168] = jj_gen; - ; - } - jj_consume_token(COMMA); - label_115: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[169] = jj_gen; - break label_115; - } - jj_consume_token(S); - } - remove = listModifyDirectiveArgs(1); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COMMA: - jj_consume_token(COMMA); - label_116: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[170] = jj_gen; - break label_116; - } - jj_consume_token(S); - } - n = jj_consume_token(IDENT); - separator = n.image; - label_117: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[171] = jj_gen; - break label_117; - } - jj_consume_token(S); - } - break; - default: - jj_la1[172] = jj_gen; - ; - } - jj_consume_token(RPARAN); - switch (type.kind) { - case APPEND: - documentHandler.appendDirective(variable, list, remove, separator); - break; - case REMOVE: - documentHandler.removeDirective(variable, list, remove, separator); - break; - case CONTAINS: - if (variable == null) { - variable = "$var_" + UUID.randomUUID(); - } - documentHandler - .containsDirective(variable, list, remove, separator); - break; - default: - break; - } - label_118: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[173] = jj_gen; - break label_118; - } - jj_consume_token(S); - } - jj_consume_token(SEMICOLON); - label_119: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[174] = jj_gen; - break label_119; - } - jj_consume_token(S); - } - } - - /** - * @exception ParseException - * exception during the parse - */ - final public void appendDirective() throws ParseException { - String list = null; - String remove = null; - String separator = null; - String variable = null; - Token n = null; - n = jj_consume_token(VARIABLE); - variable = n.image; - label_120: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[175] = jj_gen; - break label_120; - } - jj_consume_token(S); - } - jj_consume_token(COLON); - label_121: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[176] = jj_gen; - break label_121; - } - jj_consume_token(S); - } - jj_consume_token(APPEND); - label_122: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[177] = jj_gen; - break label_122; - } - jj_consume_token(S); - } - list = listModifyDirectiveArgs(0); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case RPARAN: - jj_consume_token(RPARAN); - break; - default: - jj_la1[178] = jj_gen; - ; - } - jj_consume_token(COMMA); - label_123: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[179] = jj_gen; - break label_123; - } - jj_consume_token(S); - } - remove = listModifyDirectiveArgs(1); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COMMA: - jj_consume_token(COMMA); - label_124: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[180] = jj_gen; - break label_124; - } - jj_consume_token(S); - } - n = jj_consume_token(IDENT); - separator = n.image; - label_125: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[181] = jj_gen; - break label_125; - } - jj_consume_token(S); - } - break; - default: - jj_la1[182] = jj_gen; - ; - } - jj_consume_token(RPARAN); - documentHandler.appendDirective(variable, list, remove, separator); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public void removeDirective() throws ParseException { - String list = null; - String remove = null; - String separator = null; - String variable = null; - Token n = null; - n = jj_consume_token(VARIABLE); - variable = n.image; - label_126: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[183] = jj_gen; - break label_126; - } - jj_consume_token(S); - } - jj_consume_token(COLON); - label_127: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[184] = jj_gen; - break label_127; - } - jj_consume_token(S); - } - jj_consume_token(REMOVE); - label_128: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[185] = jj_gen; - break label_128; - } - jj_consume_token(S); - } - list = listModifyDirectiveArgs(0); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case RPARAN: - jj_consume_token(RPARAN); - break; - default: - jj_la1[186] = jj_gen; - ; - } - jj_consume_token(COMMA); - label_129: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[187] = jj_gen; - break label_129; - } - jj_consume_token(S); - } - remove = listModifyDirectiveArgs(1); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COMMA: - jj_consume_token(COMMA); - label_130: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[188] = jj_gen; - break label_130; - } - jj_consume_token(S); - } - n = jj_consume_token(IDENT); - separator = n.image; - label_131: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[189] = jj_gen; - break label_131; - } - jj_consume_token(S); - } - break; - default: - jj_la1[190] = jj_gen; - ; - } - jj_consume_token(RPARAN); - documentHandler.removeDirective(variable, list, remove, separator); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public String containsDirective() throws ParseException { - String list = null; - String remove = null; - String separator = null; - String variable = null; - Token n = null; - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case VARIABLE: - n = jj_consume_token(VARIABLE); - variable = n.image; - label_132: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[191] = jj_gen; - break label_132; - } - jj_consume_token(S); - } - jj_consume_token(COLON); - label_133: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[192] = jj_gen; - break label_133; - } - jj_consume_token(S); - } - break; - default: - jj_la1[193] = jj_gen; - ; - } - jj_consume_token(CONTAINS); - label_134: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[194] = jj_gen; - break label_134; - } - jj_consume_token(S); - } - list = listModifyDirectiveArgs(0); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case RPARAN: - jj_consume_token(RPARAN); - break; - default: - jj_la1[195] = jj_gen; - ; - } - jj_consume_token(COMMA); - label_135: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[196] = jj_gen; - break label_135; - } - jj_consume_token(S); - } - remove = listModifyDirectiveArgs(1); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COMMA: - jj_consume_token(COMMA); - label_136: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[197] = jj_gen; - break label_136; - } - jj_consume_token(S); - } - n = jj_consume_token(IDENT); - separator = n.image; - label_137: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[198] = jj_gen; - break label_137; - } - jj_consume_token(S); - } - break; - default: - jj_la1[199] = jj_gen; - ; - } - jj_consume_token(RPARAN); - /* - * if it is not in the form like - * "$contains : contains($items, .v-button);"for example in @if, like - * "@if (contains(a b c, b))", then create a tempvariable for contains(a - * b c, b); - */ - if (variable == null) { - variable = "$var_" + UUID.randomUUID(); - } - documentHandler.containsDirective(variable, list, remove, separator); - { - if (true) { - return variable; - } - } - throw new Error("Missing return statement in function"); - } - - String listModifyDirectiveArgs(int nest) throws ParseException { - String list = ""; - int nesting = nest; - Token t = null; - - while (true) { - t = getToken(1); - String s = t.image; - if (t.kind == VARIABLE || t.kind == IDENT) { - list += s; - } else if (s.toLowerCase().equals("auto") - || s.toLowerCase().equals("space") - || s.toLowerCase().equals("comma")) { - int i = 2; - Token temp = getToken(i); - boolean isLast = true; - while (temp.kind != SEMICOLON) { - if (temp.kind != RPARAN || temp.kind != S) { - isLast = false; - } - i++; - temp = getToken(i); - } - - if (isLast) { - return list; - } - } else if (t.kind == STRING) { - list += s.substring(1, s.length()).substring(0, s.length() - 2); - - } else if (t.kind == LPARAN) { - nesting++; - if (nesting > nest + 1) { - throw new CSSParseException( - "Only one ( ) pair per parameter allowed", - getLocator()); - } - } else if (t.kind == RPARAN) { - nesting--; - if (nesting == 0) { - return list; - } - } else if (t.kind == COMMA) { - if (nesting == nest) { - return list; - } else { - list += ","; - } - - } else if (t.kind == S) { - list += " "; - } else if (t.kind == LBRACE) { - throw new CSSParseException("Invalid token,'{' found", - getLocator()); - } - - getNextToken(); - } - } - - final public Node returnDirective() throws ParseException { - String raw; - raw = skipStatement(); - { - if (true) { - return null; - } - } - throw new Error("Missing return statement in function"); - } - - final public void debuggingDirective() throws ParseException { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case DEBUG_SYM: - debugDirective(); - break; - case WARN_SYM: - warnDirective(); - break; - default: - jj_la1[200] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - - final public void debugDirective() throws ParseException { - jj_consume_token(DEBUG_SYM); - String content = skipStatementUntilSemiColon(); - // TODO should evaluate the content expression, call - // documentHandler.debugDirective() etc. - System.out.println(content); - label_138: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[201] = jj_gen; - break label_138; - } - jj_consume_token(S); - } - } - - final public void warnDirective() throws ParseException { - jj_consume_token(WARN_SYM); - String content = skipStatementUntilSemiColon(); - // TODO should evaluate the content expression, call - // documentHandler.warnDirective() etc. - System.err.println(content); - label_139: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[202] = jj_gen; - break label_139; - } - jj_consume_token(S); - } - } - - final public Node forDirective() throws ParseException { - String var; - String from; - String to; - boolean exclusive; - String body; - Token tok; - var = variableName(); - int[] toThrough = { TO, THROUGH }; - from = skipStatementUntil(toThrough); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case TO: - tok = jj_consume_token(TO); - exclusive = true; - break; - case THROUGH: - tok = jj_consume_token(THROUGH); - exclusive = false; - break; - default: - jj_la1[203] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - to = skipStatementUntilLeftBrace(); - label_140: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[204] = jj_gen; - break label_140; - } - jj_consume_token(S); - } - body = skipStatement(); - { - if (true) { - return documentHandler.forDirective(var, from, to, exclusive, - body); - } - } - throw new Error("Missing return statement in function"); - } - - final public Node whileDirective() throws ParseException { - String condition; - String body; - condition = skipStatementUntilLeftBrace(); - body = skipStatement(); - { - if (true) { - return documentHandler.whileDirective(condition, body); - } - } - throw new Error("Missing return statement in function"); - } - - final public void extendDirective() throws ParseException { - ArrayList list; - jj_consume_token(EXTEND_SYM); - label_141: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[205] = jj_gen; - break label_141; - } - jj_consume_token(S); - } - list = selectorList(); - label_142: while (true) { - jj_consume_token(SEMICOLON); - label_143: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[206] = jj_gen; - break label_143; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case SEMICOLON: - ; - break; - default: - jj_la1[207] = jj_gen; - break label_142; - } - } - documentHandler.extendDirective(list); - } - - final public void contentDirective() throws ParseException { - jj_consume_token(CONTENT_SYM); - label_144: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[208] = jj_gen; - break label_144; - } - jj_consume_token(S); - } - label_145: while (true) { - jj_consume_token(SEMICOLON); - label_146: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[209] = jj_gen; - break label_146; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case SEMICOLON: - ; - break; - default: - jj_la1[210] = jj_gen; - break label_145; - } - } - documentHandler.contentDirective(); - } - - Node importDirective() throws ParseException { - return null; - } - - Node charsetDirective() throws ParseException { - return null; - } - - Node mozDocumentDirective() throws ParseException { - return null; - } - - Node supportsDirective() throws ParseException { - return null; - } - - final public void nestedProperties() throws ParseException { - String name; - LexicalUnit exp; - name = property(); - jj_consume_token(COLON); - label_147: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[211] = jj_gen; - break label_147; - } - jj_consume_token(S); - } - jj_consume_token(LBRACE); - label_148: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[212] = jj_gen; - break label_148; - } - jj_consume_token(S); - } - documentHandler.startNestedProperties(name); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - declaration(); - break; - default: - jj_la1[213] = jj_gen; - ; - } - label_149: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case SEMICOLON: - ; - break; - default: - jj_la1[214] = jj_gen; - break label_149; - } - jj_consume_token(SEMICOLON); - label_150: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[215] = jj_gen; - break label_150; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - declaration(); - break; - default: - jj_la1[216] = jj_gen; - ; - } - } - jj_consume_token(RBRACE); - documentHandler.endNestedProperties(name); - label_151: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[217] = jj_gen; - break label_151; - } - jj_consume_token(S); - } - } - - /** - * @exception ParseException - * exception during the parse - */ - final public void styleRuleOrDeclarationOrNestedProperties() - throws ParseException { - try { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case DEBUG_SYM: - case WARN_SYM: - debuggingDirective(); - break; - default: - jj_la1[218] = jj_gen; - if (jj_2_6(2147483647)) { - styleRule(); - } else if (jj_2_7(3)) { - declarationOrNestedProperties(); - } else { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case IDENT: - case HASH: - styleRule(); - break; - default: - jj_la1[219] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - } - } catch (JumpException e) { - skipAfterExpression(); - // reportWarningSkipText(getLocator(), skipAfterExpression()); - - } catch (ParseException e) { - if (errorHandler != null) { - if (e.currentToken != null) { - LocatorImpl li = new LocatorImpl(this, - e.currentToken.next.beginLine, - e.currentToken.next.beginColumn - 1); - reportError(li, e); - } else { - reportError(getLocator(), e); - } - skipAfterExpression(); - /* - * LocatorImpl loc = (LocatorImpl) getLocator(); loc.column--; - * reportWarningSkipText(loc, skipAfterExpression()); - */ - } else { - skipAfterExpression(); - } - } - } - - /** - * @exception ParseException - * exception during the parse - */ - final public void declarationOrNestedProperties() throws ParseException { - boolean important = false; - String name; - LexicalUnitImpl exp; - Token save; - String comment = null; - try { - name = property(); - save = token; - jj_consume_token(COLON); - label_152: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[220] = jj_gen; - break label_152; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case MINUS: - case DOT: - case TO: - case THROUGH: - case FROM: - case STRING: - case IDENT: - case NUMBER: - case URL: - case VARIABLE: - case PERCENTAGE: - case PT: - case MM: - case CM: - case PC: - case IN: - case PX: - case EMS: - case LEM: - case REM: - case EXS: - case DEG: - case RAD: - case GRAD: - case MS: - case SECOND: - case HZ: - case KHZ: - case DIMEN: - case HASH: - case UNICODERANGE: - case FUNCTION: - exp = expr(); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IMPORTANT_SYM: - important = prio(); - break; - default: - jj_la1[221] = jj_gen; - ; - } - Token next = getToken(1); - if (next.kind == SEMICOLON || next.kind == RBRACE) { - while (next.kind == SEMICOLON) { - skipStatement(); - next = getToken(1); - } - // only add special token kept for sprites '/**' - if (token.specialToken != null - && token.specialToken != null - && token.specialToken.image.startsWith("/**")) { - documentHandler.property(name, exp, important, - token.specialToken.image); - } else { - documentHandler.property(name, exp, important, null); - } - } - break; - case LBRACE: - jj_consume_token(LBRACE); - label_153: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[222] = jj_gen; - break label_153; - } - jj_consume_token(S); - } - documentHandler.startNestedProperties(name); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - declaration(); - break; - default: - jj_la1[223] = jj_gen; - ; - } - label_154: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case SEMICOLON: - ; - break; - default: - jj_la1[224] = jj_gen; - break label_154; - } - jj_consume_token(SEMICOLON); - label_155: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[225] = jj_gen; - break label_155; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - declaration(); - break; - default: - jj_la1[226] = jj_gen; - ; - } - } - jj_consume_token(RBRACE); - label_156: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[227] = jj_gen; - break label_156; - } - jj_consume_token(S); - } - documentHandler.endNestedProperties(name); - break; - default: - jj_la1[228] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } catch (JumpException e) { - skipAfterExpression(); - // reportWarningSkipText(getLocator(), skipAfterExpression()); - - } catch (NumberFormatException e) { - if (errorHandler != null) { - errorHandler.error(new CSSParseException("Invalid number " - + e.getMessage(), getLocator(), e)); - } - reportWarningSkipText(getLocator(), skipAfterExpression()); - } catch (ParseException e) { - if (errorHandler != null) { - if (e.currentToken != null) { - LocatorImpl li = new LocatorImpl(this, - e.currentToken.next.beginLine, - e.currentToken.next.beginColumn - 1); - reportError(li, e); - } else { - reportError(getLocator(), e); - } - skipAfterExpression(); - /* - * LocatorImpl loc = (LocatorImpl) getLocator(); loc.column--; - * reportWarningSkipText(loc, skipAfterExpression()); - */ - } else { - skipAfterExpression(); - } - } - } - - /** - * @exception ParseException - * exception during the parse - */ - final public void declaration() throws ParseException { - boolean important = false; - String name; - LexicalUnit exp; - Token save; - try { - name = property(); - save = token; - jj_consume_token(COLON); - label_157: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[229] = jj_gen; - break label_157; - } - jj_consume_token(S); - } - exp = expr(); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IMPORTANT_SYM: - important = prio(); - break; - default: - jj_la1[230] = jj_gen; - ; - } - documentHandler.property(name, exp, important); - } catch (JumpException e) { - skipAfterExpression(); - // reportWarningSkipText(getLocator(), skipAfterExpression()); - - } catch (NumberFormatException e) { - if (errorHandler != null) { - errorHandler.error(new CSSParseException("Invalid number " - + e.getMessage(), getLocator(), e)); - } - reportWarningSkipText(getLocator(), skipAfterExpression()); - } catch (ParseException e) { - if (errorHandler != null) { - if (e.currentToken != null) { - LocatorImpl li = new LocatorImpl(this, - e.currentToken.next.beginLine, - e.currentToken.next.beginColumn - 1); - reportError(li, e); - } else { - reportError(getLocator(), e); - } - skipAfterExpression(); - /* - * LocatorImpl loc = (LocatorImpl) getLocator(); loc.column--; - * reportWarningSkipText(loc, skipAfterExpression()); - */ - } else { - skipAfterExpression(); - } - } - } - - /** - * @exception ParseException - * exception during the parse - */ - final public boolean prio() throws ParseException { - jj_consume_token(IMPORTANT_SYM); - label_158: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[231] = jj_gen; - break label_158; - } - jj_consume_token(S); - } - { - if (true) { - return true; - } - } - throw new Error("Missing return statement in function"); - } - - final public boolean guarded() throws ParseException { - jj_consume_token(GUARDED_SYM); - label_159: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[232] = jj_gen; - break label_159; - } - jj_consume_token(S); - } - { - if (true) { - return true; - } - } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public LexicalUnitImpl operator(LexicalUnitImpl prev) - throws ParseException { - Token n; - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case COMMA: - /* - * (comments copied from basic_arithmetics.scss)supports: 1. - * standard arithmetic operations (+, -, *, /, %) 2. / is treated as - * css operator, unless one of its operands is variable or there is - * another binary arithmetic operatorlimits: 1. cannot mix - * arithmetic and css operations, e.g. "margin: 1px + 3px 2px" will - * fail 2. space between add and minus operator and their following - * operand is mandatory. e.g. "1 + 2" is valid, "1+2" is not 3. - * parenthesis is not supported now. - */ - n = jj_consume_token(COMMA); - label_160: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[233] = jj_gen; - break label_160; - } - jj_consume_token(S); - } - { - if (true) { - return LexicalUnitImpl.createComma(n.beginLine, - n.beginColumn, prev); - } - } - break; - case DIV: - n = jj_consume_token(DIV); - label_161: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[234] = jj_gen; - break label_161; - } - jj_consume_token(S); - } - { - if (true) { - return LexicalUnitImpl.createSlash(n.beginLine, - n.beginColumn, prev); - } - } - break; - case ANY: - n = jj_consume_token(ANY); - label_162: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[235] = jj_gen; - break label_162; - } - jj_consume_token(S); - } - { - if (true) { - return LexicalUnitImpl.createMultiply(n.beginLine, - n.beginColumn, prev); - } - } - break; - case MOD: - n = jj_consume_token(MOD); - label_163: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[236] = jj_gen; - break label_163; - } - jj_consume_token(S); - } - { - if (true) { - return LexicalUnitImpl.createModulo(n.beginLine, - n.beginColumn, prev); - } - } - break; - case PLUS: - n = jj_consume_token(PLUS); - label_164: while (true) { - jj_consume_token(S); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[237] = jj_gen; - break label_164; - } - } - { - if (true) { - return LexicalUnitImpl.createAdd(n.beginLine, - n.beginColumn, prev); - } - } - break; - case MINUS: - n = jj_consume_token(MINUS); - label_165: while (true) { - jj_consume_token(S); - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[238] = jj_gen; - break label_165; - } - } - { - if (true) { - return LexicalUnitImpl.createMinus(n.beginLine, - n.beginColumn, prev); - } - } - break; - default: - jj_la1[239] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public LexicalUnitImpl expr() throws ParseException { - LexicalUnitImpl first, res; - char op; - first = term(null); - res = first; - label_166: while (true) { - if (jj_2_8(2)) { - ; - } else { - break label_166; - } - if (jj_2_9(2)) { - res = operator(res); - } else { - ; - } - res = term(res); - } - { - if (true) { - return first; - } - } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public char unaryOperator() throws ParseException { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case MINUS: - jj_consume_token(MINUS); - { - if (true) { - return '-'; - } - } - break; - case PLUS: - jj_consume_token(PLUS); - { - if (true) { - return '+'; - } - } - break; - default: - jj_la1[240] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public LexicalUnitImpl term(LexicalUnitImpl prev) - throws ParseException { - LexicalUnitImpl result = null; - Token n = null; - char op = ' '; - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case MINUS: - case DOT: - case TO: - case THROUGH: - case FROM: - case STRING: - case IDENT: - case NUMBER: - case URL: - case PERCENTAGE: - case PT: - case MM: - case CM: - case PC: - case IN: - case PX: - case EMS: - case LEM: - case REM: - case EXS: - case DEG: - case RAD: - case GRAD: - case MS: - case SECOND: - case HZ: - case KHZ: - case DIMEN: - case HASH: - case UNICODERANGE: - case FUNCTION: - result = nonVariableTerm(prev); - break; - case VARIABLE: - result = variableTerm(prev); - break; - default: - jj_la1[241] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - { - if (true) { - return result; - } - } - throw new Error("Missing return statement in function"); - } - - final public LexicalUnitImpl variableTerm(LexicalUnitImpl prev) - throws ParseException { - LexicalUnitImpl result = null; - String varName = ""; - varName = variableName(); - result = LexicalUnitImpl.createVariable(token.beginLine, - token.beginColumn, prev, varName); - { - if (true) { - return result; - } - } - throw new Error("Missing return statement in function"); - } - - final public LexicalUnitImpl nonVariableTerm(LexicalUnitImpl prev) - throws ParseException { - LexicalUnitImpl result = null; - Token n = null; - char op = ' '; - String varName; - String s = ""; - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case MINUS: - case NUMBER: - case PERCENTAGE: - case PT: - case MM: - case CM: - case PC: - case IN: - case PX: - case EMS: - case LEM: - case REM: - case EXS: - case DEG: - case RAD: - case GRAD: - case MS: - case SECOND: - case HZ: - case KHZ: - case DIMEN: - case FUNCTION: - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case MINUS: - op = unaryOperator(); - break; - default: - jj_la1[242] = jj_gen; - ; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case NUMBER: - n = jj_consume_token(NUMBER); - result = LexicalUnitImpl.createNumber(n.beginLine, - n.beginColumn, prev, number(op, n, 0)); - break; - case PERCENTAGE: - n = jj_consume_token(PERCENTAGE); - result = LexicalUnitImpl.createPercentage(n.beginLine, - n.beginColumn, prev, number(op, n, 1)); - break; - case PT: - n = jj_consume_token(PT); - result = LexicalUnitImpl.createPT(n.beginLine, n.beginColumn, - prev, number(op, n, 2)); - break; - case CM: - n = jj_consume_token(CM); - result = LexicalUnitImpl.createCM(n.beginLine, n.beginColumn, - prev, number(op, n, 2)); - break; - case MM: - n = jj_consume_token(MM); - result = LexicalUnitImpl.createMM(n.beginLine, n.beginColumn, - prev, number(op, n, 2)); - break; - case PC: - n = jj_consume_token(PC); - result = LexicalUnitImpl.createPC(n.beginLine, n.beginColumn, - prev, number(op, n, 2)); - break; - case IN: - n = jj_consume_token(IN); - result = LexicalUnitImpl.createIN(n.beginLine, n.beginColumn, - prev, number(op, n, 2)); - break; - case PX: - n = jj_consume_token(PX); - result = LexicalUnitImpl.createPX(n.beginLine, n.beginColumn, - prev, number(op, n, 2)); - break; - case EMS: - n = jj_consume_token(EMS); - result = LexicalUnitImpl.createEMS(n.beginLine, n.beginColumn, - prev, number(op, n, 2)); - break; - case LEM: - n = jj_consume_token(LEM); - result = LexicalUnitImpl.createLEM(n.beginLine, n.beginColumn, - prev, number(op, n, 3)); - break; - case REM: - n = jj_consume_token(REM); - result = LexicalUnitImpl.createREM(n.beginLine, n.beginColumn, - prev, number(op, n, 3)); - break; - case EXS: - n = jj_consume_token(EXS); - result = LexicalUnitImpl.createEXS(n.beginLine, n.beginColumn, - prev, number(op, n, 2)); - break; - case DEG: - n = jj_consume_token(DEG); - result = LexicalUnitImpl.createDEG(n.beginLine, n.beginColumn, - prev, number(op, n, 3)); - break; - case RAD: - n = jj_consume_token(RAD); - result = LexicalUnitImpl.createRAD(n.beginLine, n.beginColumn, - prev, number(op, n, 3)); - break; - case GRAD: - n = jj_consume_token(GRAD); - result = LexicalUnitImpl.createGRAD(n.beginLine, n.beginColumn, - prev, number(op, n, 3)); - break; - case SECOND: - n = jj_consume_token(SECOND); - result = LexicalUnitImpl.createS(n.beginLine, n.beginColumn, - prev, number(op, n, 1)); - break; - case MS: - n = jj_consume_token(MS); - result = LexicalUnitImpl.createMS(n.beginLine, n.beginColumn, - prev, number(op, n, 2)); - break; - case HZ: - n = jj_consume_token(HZ); - result = LexicalUnitImpl.createHZ(n.beginLine, n.beginColumn, - prev, number(op, n, 2)); - break; - case KHZ: - n = jj_consume_token(KHZ); - result = LexicalUnitImpl.createKHZ(n.beginLine, n.beginColumn, - prev, number(op, n, 3)); - break; - case DIMEN: - n = jj_consume_token(DIMEN); - s = n.image; - int i = 0; - while (i < s.length() - && (Character.isDigit(s.charAt(i)) || (s.charAt(i) == '.'))) { - i++; - } - /* - * result = LexicalUnitImpl.createDimen(n.beginLine, - * n.beginColumn, prev, Float.valueOf(s.substring(0, - * i)).floatValue(), s.substring(i)); - */ - result = LexicalUnitImpl.createDimen(n.beginLine, - n.beginColumn, prev, number(op, n, s.length() - i), - s.substring(i)); - break; - case FUNCTION: - result = function(op, prev); - break; - default: - jj_la1[243] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - break; - case DOT: - case TO: - case THROUGH: - case FROM: - case STRING: - case IDENT: - case URL: - case HASH: - case UNICODERANGE: - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case STRING: - n = jj_consume_token(STRING); - result = LexicalUnitImpl.createString(n.beginLine, - n.beginColumn, prev, - convertStringIndex(n.image, 1, n.image.length() - 1)); - break; - case DOT: - case TO: - case THROUGH: - case FROM: - case IDENT: - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case DOT: - jj_consume_token(DOT); - s += "."; - break; - default: - jj_la1[244] = jj_gen; - ; - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IDENT: - n = jj_consume_token(IDENT); - break; - case TO: - n = jj_consume_token(TO); - break; - case THROUGH: - n = jj_consume_token(THROUGH); - break; - case FROM: - n = jj_consume_token(FROM); - break; - default: - jj_la1[245] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - s += convertIdent(n.image); - if ("inherit".equals(s)) { - result = LexicalUnitImpl.createInherit(n.beginLine, - n.beginColumn, prev); - } else { - result = LexicalUnitImpl.createIdent(n.beginLine, - n.beginColumn, prev, convertIdent(n.image)); - } - - /* - * / Auto correction code used in the CSS Validator but must not - * be used by a conformant CSS2 parser. Common error : H1 { - * color : black background : white } - * - * Token t = getToken(1); Token semicolon = new Token(); - * semicolon.kind = SEMICOLON; semicolon.image = ";"; if (t.kind - * == COLON) { // @@SEEME. (generate a warning?) // @@SEEME if - * expression is a single ident, generate an error ? - * rejectToken(semicolon); - * - * result = prev; } / - */ - - break; - case HASH: - result = hexcolor(prev); - break; - case URL: - result = url(prev); - break; - case UNICODERANGE: - result = unicode(prev); - break; - default: - jj_la1[246] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - break; - default: - jj_la1[247] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - label_167: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[248] = jj_gen; - break label_167; - } - jj_consume_token(S); - } - { - if (true) { - return result; - } - } - throw new Error("Missing return statement in function"); - } - - /** - * Handle all CSS2 functions. - * - * @exception ParseException - * exception during the parse - */ - final public LexicalUnitImpl function(char operator, LexicalUnitImpl prev) - throws ParseException { - Token n; - LexicalUnit params = null; - n = jj_consume_token(FUNCTION); - label_168: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[249] = jj_gen; - break label_168; - } - jj_consume_token(S); - } - String fname = convertIdent(n.image); - if ("alpha(".equals(fname)) { - String body = skipStatementUntilSemiColon(); - { - if (true) { - return LexicalUnitImpl.createIdent(n.beginLine, - n.beginColumn, null, "alpha(" + body); - } - } - } else if ("expression(".equals(fname)) { - String body = skipStatementUntilSemiColon(); - { - if (true) { - return LexicalUnitImpl.createIdent(n.beginLine, - n.beginColumn, null, "expression(" + body); - } - } - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case PLUS: - case MINUS: - case DOT: - case TO: - case THROUGH: - case FROM: - case STRING: - case IDENT: - case NUMBER: - case URL: - case VARIABLE: - case PERCENTAGE: - case PT: - case MM: - case CM: - case PC: - case IN: - case PX: - case EMS: - case LEM: - case REM: - case EXS: - case DEG: - case RAD: - case GRAD: - case MS: - case SECOND: - case HZ: - case KHZ: - case DIMEN: - case HASH: - case UNICODERANGE: - case FUNCTION: - params = expr(); - break; - default: - jj_la1[250] = jj_gen; - ; - } - jj_consume_token(RPARAN); - if (operator != ' ') { - { - if (true) { - throw new CSSParseException( - "invalid operator before a function.", getLocator()); - } - } - } - String f = convertIdent(n.image); - LexicalUnitImpl l = (LexicalUnitImpl) params; - boolean loop = true; - if ("rgb(".equals(f)) { - // this is a RGB declaration (e.g. rgb(255, 50%, 0) ) - int i = 0; - while (loop && l != null && i < 5) { - switch (i) { - case 0: - case 2: - case 4: - if ((l.getLexicalUnitType() != LexicalUnit.SAC_INTEGER) - && (l.getLexicalUnitType() != LexicalUnit.SAC_PERCENTAGE)) { - loop = false; - } - break; - case 1: - case 3: - if (l.getLexicalUnitType() != LexicalUnit.SAC_OPERATOR_COMMA) { - loop = false; - } - break; - default: { - if (true) { - throw new ParseException("implementation error"); - } - } - } - if (loop) { - l = l.getNextLexicalUnit(); - i++; - } - } - if ((i == 5) && loop && (l == null)) { - { - if (true) { - return LexicalUnitImpl.createRGBColor(n.beginLine, - n.beginColumn, prev, params); - } - } - } else { - if (errorHandler != null) { - String errorText; - Locator loc; - if (i < 5) { - if (params == null) { - loc = new LocatorImpl(this, n.beginLine, - n.beginColumn - 1); - errorText = "not enough parameters."; - } else if (l == null) { - loc = new LocatorImpl(this, n.beginLine, - n.beginColumn - 1); - errorText = "not enough parameters: " - + params.toString(); - } else { - loc = new LocatorImpl(this, l.getLineNumber(), - l.getColumnNumber()); - errorText = "invalid parameter: " + l.toString(); - } - } else { - loc = new LocatorImpl(this, l.getLineNumber(), - l.getColumnNumber()); - errorText = "too many parameters: " + l.toString(); - } - errorHandler.error(new CSSParseException(errorText, loc)); - } - - { - if (true) { - throw new JumpException(); - } - } - } - } else if ("counter".equals(f)) { - int i = 0; - while (loop && l != null && i < 3) { - switch (i) { - case 0: - case 2: - if (l.getLexicalUnitType() != LexicalUnit.SAC_IDENT) { - loop = false; - } - break; - case 1: - if (l.getLexicalUnitType() != LexicalUnit.SAC_OPERATOR_COMMA) { - loop = false; - } - break; - default: { - if (true) { - throw new ParseException("implementation error"); - } - } - } - l = l.getNextLexicalUnit(); - i++; - } - if (((i == 1) || (i == 3)) && loop && (l == null)) { - { - if (true) { - return LexicalUnitImpl.createCounter(n.beginLine, - n.beginColumn, prev, params); - } - } - } - - } else if ("counters(".equals(f)) { - - int i = 0; - while (loop && l != null && i < 5) { - switch (i) { - case 0: - case 4: - if (l.getLexicalUnitType() != LexicalUnit.SAC_IDENT) { - loop = false; - } - break; - case 2: - if (l.getLexicalUnitType() != LexicalUnit.SAC_STRING_VALUE) { - loop = false; - } - break; - case 1: - case 3: - if (l.getLexicalUnitType() != LexicalUnit.SAC_OPERATOR_COMMA) { - loop = false; - } - break; - default: { - if (true) { - throw new ParseException("implementation error"); - } - } - } - l = l.getNextLexicalUnit(); - i++; - } - if (((i == 3) || (i == 5)) && loop && (l == null)) { - { - if (true) { - return LexicalUnitImpl.createCounters(n.beginLine, - n.beginColumn, prev, params); - } - } - } - } else if ("attr(".equals(f)) { - if ((l != null) && (l.getNextLexicalUnit() == null) - && (l.getLexicalUnitType() == LexicalUnit.SAC_IDENT)) { - { - if (true) { - return LexicalUnitImpl.createAttr(l.getLineNumber(), - l.getColumnNumber(), prev, l.getStringValue()); - } - } - } - } else if ("rect(".equals(f)) { - int i = 0; - while (loop && l != null && i < 7) { - switch (i) { - case 0: - case 2: - case 4: - case 6: - switch (l.getLexicalUnitType()) { - case LexicalUnit.SAC_INTEGER: - if (l.getIntegerValue() != 0) { - loop = false; - } - break; - case LexicalUnit.SAC_IDENT: - if (!l.getStringValue().equals("auto")) { - loop = false; - } - break; - case LexicalUnit.SAC_EM: - case LexicalUnit.SAC_EX: - case LexicalUnit.SAC_PIXEL: - case LexicalUnit.SAC_CENTIMETER: - case LexicalUnit.SAC_MILLIMETER: - case LexicalUnit.SAC_INCH: - case LexicalUnit.SAC_POINT: - case LexicalUnit.SAC_PICA: - // nothing - break; - default: - loop = false; - } - break; - case 1: - case 3: - case 5: - if (l.getLexicalUnitType() != LexicalUnit.SAC_OPERATOR_COMMA) { - loop = false; - } - break; - default: { - if (true) { - throw new ParseException("implementation error"); - } - } - } - l = l.getNextLexicalUnit(); - i++; - } - if ((i == 7) && loop && (l == null)) { - { - if (true) { - return LexicalUnitImpl.createRect(n.beginLine, - n.beginColumn, prev, params); - } - } - } - } - { - if (true) { - return LexicalUnitImpl.createFunction(n.beginLine, - n.beginColumn, prev, f.substring(0, f.length() - 1), - params); - } - } - throw new Error("Missing return statement in function"); - } - - final public LexicalUnitImpl unicode(LexicalUnitImpl prev) - throws ParseException { - Token n; - n = jj_consume_token(UNICODERANGE); - LexicalUnitImpl params = null; - String s = n.image.substring(2); - int index = s.indexOf('-'); - if (index == -1) { - params = LexicalUnitImpl.createInteger(n.beginLine, n.beginColumn, - params, Integer.parseInt(s, 16)); - } else { - String s1 = s.substring(0, index); - String s2 = s.substring(index); - - params = LexicalUnitImpl.createInteger(n.beginLine, n.beginColumn, - params, Integer.parseInt(s1, 16)); - params = LexicalUnitImpl.createInteger(n.beginLine, n.beginColumn, - params, Integer.parseInt(s2, 16)); - } - - { - if (true) { - return LexicalUnitImpl.createUnicodeRange(n.beginLine, - n.beginColumn, prev, params); - } - } - throw new Error("Missing return statement in function"); - } - - final public LexicalUnitImpl url(LexicalUnitImpl prev) - throws ParseException { - Token n; - n = jj_consume_token(URL); - String urlname = n.image.substring(4, n.image.length() - 1).trim(); - { - if (true) { - return LexicalUnitImpl.createURL(n.beginLine, n.beginColumn, - prev, urlname); - } - } - throw new Error("Missing return statement in function"); - } - - /** - * @exception ParseException - * exception during the parse - */ - final public LexicalUnitImpl hexcolor(LexicalUnitImpl prev) - throws ParseException { - Token n; - n = jj_consume_token(HASH); - int r; - LexicalUnitImpl first, params = null; - String s = n.image.substring(1); - - if (s.length() != 3 && s.length() != 6) { - first = null; - { - if (true) { - throw new CSSParseException( - "invalid hexadecimal notation for RGB: " + s, - getLocator()); - } - } - } - { - if (true) { - return LexicalUnitImpl.createIdent(n.beginLine, n.beginColumn, - prev, n.image); - } - } - throw new Error("Missing return statement in function"); - } - - float number(char operator, Token n, int lengthUnit) throws ParseException { - String image = n.image; - float f = 0; - - if (lengthUnit != 0) { - image = image.substring(0, image.length() - lengthUnit); - } - f = Float.valueOf(image).floatValue(); - return (operator == '-') ? -f : f; - } - - String skipStatementUntilSemiColon() throws ParseException { - int[] semicolon = { SEMICOLON }; - return skipStatementUntil(semicolon); - } - - String skipStatementUntilLeftBrace() throws ParseException { - int[] lBrace = { LBRACE }; - return skipStatementUntil(lBrace); - } - - String skipStatementUntilRightParan() throws ParseException { - int[] rParan = { RPARAN }; - return skipStatementUntil(rParan); - } - - String skipStatementUntil(int[] symbols) throws ParseException { - StringBuffer s = new StringBuffer(); - boolean stop = false; - Token tok; - while (!stop) { - tok = getToken(1); - if (tok.kind == EOF) { - return null; - } - for (int sym : symbols) { - if (tok.kind == sym) { - stop = true; - break; - } - } - if (!stop) { - if (tok.image != null) { - s.append(tok.image); - } - getNextToken(); - } - } - return s.toString().trim(); - } - - String skipStatement() throws ParseException { - StringBuffer s = new StringBuffer(); - Token tok = getToken(0); - if (tok.image != null) { - s.append(tok.image); - } - while (true) { - tok = getToken(1); - if (tok.kind == EOF) { - return null; - } - s.append(tok.image); - if (tok.kind == LBRACE) { - getNextToken(); - s.append(skip_to_matching_brace()); - getNextToken(); - tok = getToken(1); - break; - } else if (tok.kind == RBRACE) { - getNextToken(); - tok = getToken(1); - break; - } else if (tok.kind == SEMICOLON) { - getNextToken(); - tok = getToken(1); - break; - } - getNextToken(); - } - - // skip white space - while (true) { - if (tok.kind != S) { - break; - } - tok = getNextToken(); - tok = getToken(1); - } - - return s.toString().trim(); - } - - String skip_to_matching_brace() throws ParseException { - StringBuffer s = new StringBuffer(); - Token tok; - int nesting = 1; - while (true) { - tok = getToken(1); - if (tok.kind == EOF) { - break; - } - s.append(tok.image); - if (tok.kind == LBRACE) { - nesting++; - } else if (tok.kind == RBRACE) { - nesting--; - if (nesting == 0) { - break; - } - } - getNextToken(); - } - return s.toString(); - } - - String convertStringIndex(String s, int start, int len) - throws ParseException { - StringBuffer buf = new StringBuffer(len); - int index = start; - - while (index < len) { - char c = s.charAt(index); - if (c == '\u005c\u005c') { - if (++index < len) { - c = s.charAt(index); - switch (c) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - buf.append('\u005c\u005c'); - while (index < len) { - buf.append(s.charAt(index++)); - } - break; - case '\u005cn': - case '\u005cf': - break; - case '\u005cr': - if (index + 1 < len) { - if (s.charAt(index + 1) == '\u005cn') { - index++; - } - } - break; - default: - buf.append(c); - } - } else { - throw new CSSParseException("invalid string " + s, - getLocator()); - } - } else { - buf.append(c); - } - index++; - } - - return buf.toString(); - } - - String convertIdent(String s) throws ParseException { - return convertStringIndex(s, 0, s.length()); - } - - String convertString(String s) throws ParseException { - return convertStringIndex(s, 0, s.length()); - } - - void comments() throws ParseException { - /* - * keeps only the multiple line comments, single line comments are - * skipped - */ - if (token.specialToken != null && token.specialToken.image != null - && token.specialToken.image.startsWith("/*")) { - Token tmp_t = token.specialToken; - while (tmp_t.specialToken != null) { - tmp_t = tmp_t.specialToken; - } - while (tmp_t != null) { - documentHandler.comment(tmp_t.image); - tmp_t = tmp_t.next; - } - } - } - - void rejectToken(Token t) throws ParseException { - Token fakeToken = new Token(); - t.next = token; - fakeToken.next = t; - token = fakeToken; - } - - String skipAfterExpression() throws ParseException { - Token t = getToken(1); - StringBuffer s = new StringBuffer(); - s.append(getToken(0).image); - - while ((t.kind != RBRACE) && (t.kind != SEMICOLON) && (t.kind != EOF)) { - s.append(t.image); - getNextToken(); - t = getToken(1); - } - - return s.toString(); - } - - /** - * The following functions are useful for a DOM CSS implementation only and - * are not part of the general CSS2 parser. - */ - // TODO required by original parser but not used by Vaadin? - final public void _parseRule() throws ParseException { - String ret = null; - label_169: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[251] = jj_gen; - break label_169; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case IMPORT_SYM: - importDeclaration(); - break; - case DEBUG_SYM: - case WARN_SYM: - debuggingDirective(); - break; - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case IDENT: - case HASH: - styleRule(); - break; - case MEDIA_SYM: - media(); - break; - case PAGE_SYM: - page(); - break; - case FONT_FACE_SYM: - fontFace(); - break; - default: - jj_la1[252] = jj_gen; - ret = skipStatement(); - if ((ret == null) || (ret.length() == 0)) { - { - if (true) { - return; - } - } - } - if (ret.charAt(0) == '@') { - documentHandler.unrecognizedRule(ret); - } else { - { - if (true) { - throw new CSSParseException("unrecognize rule: " + ret, - getLocator()); - } - } - } - } - } - - final public void _parseImportRule() throws ParseException { - label_170: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[253] = jj_gen; - break label_170; - } - jj_consume_token(S); - } - importDeclaration(); - } - - final public void _parseMediaRule() throws ParseException { - label_171: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[254] = jj_gen; - break label_171; - } - jj_consume_token(S); - } - media(); - } - - final public void _parseDeclarationBlock() throws ParseException { - label_172: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[255] = jj_gen; - break label_172; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - declaration(); - break; - default: - jj_la1[256] = jj_gen; - ; - } - label_173: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case SEMICOLON: - ; - break; - default: - jj_la1[257] = jj_gen; - break label_173; - } - jj_consume_token(SEMICOLON); - label_174: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[258] = jj_gen; - break label_174; - } - jj_consume_token(S); - } - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case INTERPOLATION: - case IDENT: - declaration(); - break; - default: - jj_la1[259] = jj_gen; - ; - } - } - } - - final public ArrayList _parseSelectors() throws ParseException { - ArrayList p = null; - try { - label_175: while (true) { - switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { - case S: - ; - break; - default: - jj_la1[260] = jj_gen; - break label_175; - } - jj_consume_token(S); - } - p = selectorList(); - { - if (true) { - return p; - } - } - } catch (ThrowedParseException e) { - { - if (true) { - throw (ParseException) e.e.fillInStackTrace(); - } - } - } - throw new Error("Missing return statement in function"); - } - - private boolean jj_2_1(int xla) { - jj_la = xla; - jj_lastpos = jj_scanpos = token; - try { - return !jj_3_1(); - } catch (LookaheadSuccess ls) { - return true; - } finally { - jj_save(0, xla); - } - } - - private boolean jj_2_2(int xla) { - jj_la = xla; - jj_lastpos = jj_scanpos = token; - try { - return !jj_3_2(); - } catch (LookaheadSuccess ls) { - return true; - } finally { - jj_save(1, xla); - } - } - - private boolean jj_2_3(int xla) { - jj_la = xla; - jj_lastpos = jj_scanpos = token; - try { - return !jj_3_3(); - } catch (LookaheadSuccess ls) { - return true; - } finally { - jj_save(2, xla); - } - } - - private boolean jj_2_4(int xla) { - jj_la = xla; - jj_lastpos = jj_scanpos = token; - try { - return !jj_3_4(); - } catch (LookaheadSuccess ls) { - return true; - } finally { - jj_save(3, xla); - } - } - - private boolean jj_2_5(int xla) { - jj_la = xla; - jj_lastpos = jj_scanpos = token; - try { - return !jj_3_5(); - } catch (LookaheadSuccess ls) { - return true; - } finally { - jj_save(4, xla); - } - } - - private boolean jj_2_6(int xla) { - jj_la = xla; - jj_lastpos = jj_scanpos = token; - try { - return !jj_3_6(); - } catch (LookaheadSuccess ls) { - return true; - } finally { - jj_save(5, xla); - } - } - - private boolean jj_2_7(int xla) { - jj_la = xla; - jj_lastpos = jj_scanpos = token; - try { - return !jj_3_7(); - } catch (LookaheadSuccess ls) { - return true; - } finally { - jj_save(6, xla); - } - } - - private boolean jj_2_8(int xla) { - jj_la = xla; - jj_lastpos = jj_scanpos = token; - try { - return !jj_3_8(); - } catch (LookaheadSuccess ls) { - return true; - } finally { - jj_save(7, xla); - } - } - - private boolean jj_2_9(int xla) { - jj_la = xla; - jj_lastpos = jj_scanpos = token; - try { - return !jj_3_9(); - } catch (LookaheadSuccess ls) { - return true; - } finally { - jj_save(8, xla); - } - } - - private boolean jj_3R_188() { - if (jj_3R_213()) { - return true; - } - return false; - } - - private boolean jj_3R_210() { - if (jj_scan_token(MOD)) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3R_209() { - if (jj_scan_token(ANY)) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3R_208() { - if (jj_scan_token(DIV)) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3R_207() { - if (jj_scan_token(COMMA)) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3R_185() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_207()) { - jj_scanpos = xsp; - if (jj_3R_208()) { - jj_scanpos = xsp; - if (jj_3R_209()) { - jj_scanpos = xsp; - if (jj_3R_210()) { - jj_scanpos = xsp; - if (jj_3R_211()) { - jj_scanpos = xsp; - if (jj_3R_212()) { - return true; - } - } - } - } - } - } - return false; - } - - private boolean jj_3R_215() { - if (jj_3R_214()) { - return true; - } - return false; - } - - private boolean jj_3R_213() { - if (jj_scan_token(GUARDED_SYM)) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3R_214() { - Token xsp; - xsp = jj_scanpos; - if (jj_scan_token(18)) { - jj_scanpos = xsp; - if (jj_scan_token(22)) { - jj_scanpos = xsp; - if (jj_scan_token(23)) { - return true; - } - } - } - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3R_176() { - if (jj_3R_186()) { - return true; - } - if (jj_scan_token(COLON)) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - if (jj_3R_187()) { - return true; - } - xsp = jj_scanpos; - if (jj_3R_188()) { - jj_scanpos = xsp; - } - if (jj_3R_189()) { - return true; - } - while (true) { - xsp = jj_scanpos; - if (jj_3R_189()) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3R_191() { - if (jj_scan_token(S)) { - return true; - } - Token xsp; - xsp = jj_scanpos; - if (jj_3R_215()) { - jj_scanpos = xsp; - } - return false; - } - - private boolean jj_3R_190() { - if (jj_3R_214()) { - return true; - } - return false; - } - - private boolean jj_3R_177() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_190()) { - jj_scanpos = xsp; - if (jj_3R_191()) { - return true; - } - } - return false; - } - - private boolean jj_3R_197() { - if (jj_scan_token(VARIABLE)) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - if (jj_scan_token(COLON)) { - return true; - } - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3R_179() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_197()) { - jj_scanpos = xsp; - } - if (jj_scan_token(CONTAINS)) { - return true; - } - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - if (true) { - jj_la = 0; - jj_scanpos = jj_lastpos; - return false; - } - return false; - } - - private boolean jj_3R_217() { - if (jj_scan_token(HASH)) { - return true; - } - return false; - } - - private boolean jj_3R_287() { - if (jj_scan_token(IDENT)) { - return true; - } - return false; - } - - private boolean jj_3R_288() { - if (jj_scan_token(FUNCTION)) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - if (true) { - jj_la = 0; - jj_scanpos = jj_lastpos; - return false; - } - return false; - } - - private boolean jj_3R_286() { - if (jj_scan_token(COLON)) { - return true; - } - return false; - } - - private boolean jj_3R_219() { - if (jj_scan_token(COLON)) { - return true; - } - Token xsp; - xsp = jj_scanpos; - if (jj_3R_286()) { - jj_scanpos = xsp; - } - xsp = jj_scanpos; - if (jj_3R_287()) { - jj_scanpos = xsp; - if (jj_3R_288()) { - return true; - } - } - return false; - } - - private boolean jj_3_7() { - if (jj_3R_183()) { - return true; - } - return false; - } - - private boolean jj_3R_204() { - if (jj_scan_token(LBRACE)) { - return true; - } - return false; - } - - private boolean jj_3R_307() { - if (jj_scan_token(STRING)) { - return true; - } - return false; - } - - private boolean jj_3R_305() { - if (jj_scan_token(STARMATCH)) { - return true; - } - return false; - } - - private boolean jj_3R_306() { - if (jj_scan_token(IDENT)) { - return true; - } - return false; - } - - private boolean jj_3R_304() { - if (jj_scan_token(DOLLARMATCH)) { - return true; - } - return false; - } - - private boolean jj_3R_303() { - if (jj_scan_token(CARETMATCH)) { - return true; - } - return false; - } - - private boolean jj_3R_302() { - if (jj_scan_token(DASHMATCH)) { - return true; - } - return false; - } - - private boolean jj_3R_301() { - if (jj_scan_token(INCLUDES)) { - return true; - } - return false; - } - - private boolean jj_3R_268() { - if (jj_scan_token(INTERPOLATION)) { - return true; - } - return false; - } - - private boolean jj_3R_300() { - if (jj_scan_token(EQ)) { - return true; - } - return false; - } - - private boolean jj_3R_203() { - if (jj_3R_187()) { - return true; - } - return false; - } - - private boolean jj_3R_293() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_300()) { - jj_scanpos = xsp; - if (jj_3R_301()) { - jj_scanpos = xsp; - if (jj_3R_302()) { - jj_scanpos = xsp; - if (jj_3R_303()) { - jj_scanpos = xsp; - if (jj_3R_304()) { - jj_scanpos = xsp; - if (jj_3R_305()) { - return true; - } - } - } - } - } - } - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - xsp = jj_scanpos; - if (jj_3R_306()) { - jj_scanpos = xsp; - if (jj_3R_307()) { - return true; - } - } - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3_6() { - if (jj_3R_182()) { - return true; - } - if (jj_scan_token(LBRACE)) { - return true; - } - return false; - } - - private boolean jj_3R_220() { - if (jj_scan_token(LBRACKET)) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - if (jj_scan_token(IDENT)) { - return true; - } - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - xsp = jj_scanpos; - if (jj_3R_293()) { - jj_scanpos = xsp; - } - if (jj_scan_token(RBRACKET)) { - return true; - } - return false; - } - - private boolean jj_3R_183() { - if (jj_3R_202()) { - return true; - } - if (jj_scan_token(COLON)) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - xsp = jj_scanpos; - if (jj_3R_203()) { - jj_scanpos = xsp; - if (jj_3R_204()) { - return true; - } - } - return false; - } - - private boolean jj_3R_266() { - if (jj_3R_187()) { - return true; + case MINUS: + case COMMA: + case SEMICOLON: + case NONASCII: + case STRING: + case NUMBER: + case URL: + case PERCENTAGE: + case IMPORT_SYM: + case MEDIA_SYM: + case CHARSET_SYM: + case PAGE_SYM: + case FONT_FACE_SYM: + case ATKEYWORD: + case IMPORTANT_SYM: + case UNICODERANGE: + case FUNCTION: + case UNKNOWN: + skipUnknownRule(); + break; + default: + jj_la1[38] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + jj_consume_token(RBRACE); + label_29: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[39] = jj_gen; + break label_29; + } + jj_consume_token(S); + } + } catch (ParseException e) { + reportError(getLocator(), e); + skipStatement(); + // reportWarningSkipText(getLocator(), skipStatement()); + + } finally { + if (start) { + documentHandler.endMedia(ml); + } + } + } + + final public void mediaStatement(MediaListImpl ml) throws ParseException { + Token t; + t = getToken(1); + // loop over comma separated parts, add each to ml + while ((t.kind != LBRACE) && (t.kind != EOF) && (t.kind != SEMICOLON)) { + StringBuffer s = new StringBuffer(); + s.append(getToken(0).image); + while ((t.kind != COMMA) && (t.kind != LBRACE) && (t.kind != EOF) && (t.kind != SEMICOLON)) { + s.append(t.image); + getNextToken(); + t = getToken(1); } - return false; - } - - private boolean jj_3R_299() { - if (jj_scan_token(INTERPOLATION)) { - return true; + if (t.kind == COMMA) { + // skip the comma and the token before it that is still the active token + getNextToken(); + getNextToken(); + t = getToken(1); } - return false; - } - - private boolean jj_3R_254() { - if (jj_scan_token(PARENT)) { - return true; + String str = s.toString().trim(); + if (str.length() > 0) { + ml.addItem(str); } - return false; - } + } + } - private boolean jj_3R_253() { - if (jj_scan_token(ANY)) { - return true; - } - return false; - } +/** + * @exception ParseException exception during the parse + */ + final public String medium() throws ParseException { + Token n; + n = jj_consume_token(IDENT); + {if (true) return convertIdent(n.image);} + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_256() { - if (jj_scan_token(FUNCTION)) { - return true; +/** + * @exception ParseException exception during the parse + */ + final public void page() throws ParseException { + boolean start = false; + Token n = null; + String page = null; + String pseudo = null; + try { + jj_consume_token(PAGE_SYM); + label_30: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[40] = jj_gen; + break label_30; } - Token xsp; + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IDENT: + n = jj_consume_token(IDENT); + label_31: while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - xsp = jj_scanpos; - if (jj_3R_266()) { - jj_scanpos = xsp; - } - if (jj_scan_token(RPARAN)) { - return true; - } - return false; - } - - private boolean jj_3R_263() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_267()) { - jj_scanpos = xsp; - if (jj_3R_268()) { - return true; - } - } - return false; - } - - private boolean jj_3R_267() { - if (jj_scan_token(IDENT)) { - return true; - } - return false; - } - - private boolean jj_3R_216() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_252()) { - jj_scanpos = xsp; - if (jj_3R_253()) { - jj_scanpos = xsp; - if (jj_3R_254()) { - return true; - } - } - } - return false; - } - - private boolean jj_3R_252() { - Token xsp; - if (jj_3R_263()) { - return true; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[41] = jj_gen; + break label_31; + } + jj_consume_token(S); + } + break; + default: + jj_la1[42] = jj_gen; + ; + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COLON: + pseudo = pseudo_page(); + break; + default: + jj_la1[43] = jj_gen; + ; + } + if (n != null) { + page = convertIdent(n.image); + } + jj_consume_token(LBRACE); + label_32: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[44] = jj_gen; + break label_32; + } + jj_consume_token(S); + } + start = true; + documentHandler.startPage(page, pseudo); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + declaration(); + break; + default: + jj_la1[45] = jj_gen; + ; + } + label_33: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case SEMICOLON: + ; + break; + default: + jj_la1[46] = jj_gen; + break label_33; } + jj_consume_token(SEMICOLON); + label_34: while (true) { - xsp = jj_scanpos; - if (jj_3R_263()) { - jj_scanpos = xsp; - break; - } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[47] = jj_gen; + break label_34; + } + jj_consume_token(S); } - return false; - } - - private boolean jj_3R_180() { - if (jj_scan_token(COMMA)) { - return true; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + declaration(); + break; + default: + jj_la1[48] = jj_gen; + ; + } + } + jj_consume_token(RBRACE); + label_35: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[49] = jj_gen; + break label_35; + } + jj_consume_token(S); + } + } catch (ParseException e) { + if (errorHandler != null) { + LocatorImpl li = new LocatorImpl(this, + e.currentToken.next.beginLine, + e.currentToken.next.beginColumn-1); + reportError(li, e); + skipStatement(); + // reportWarningSkipText(li, skipStatement()); + } else { + skipStatement(); + } + } finally { + if (start) { + documentHandler.endPage(page, pseudo); + } + } + } + + final public String pseudo_page() throws ParseException { + Token n; + jj_consume_token(COLON); + n = jj_consume_token(IDENT); + label_36: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[50] = jj_gen; + break label_36; + } + jj_consume_token(S); + } + {if (true) return convertIdent(n.image);} + throw new Error("Missing return statement in function"); + } + + final public void fontFace() throws ParseException { + boolean start = false; + try { + jj_consume_token(FONT_FACE_SYM); + label_37: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[51] = jj_gen; + break label_37; + } + jj_consume_token(S); + } + jj_consume_token(LBRACE); + label_38: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[52] = jj_gen; + break label_38; + } + jj_consume_token(S); + } + start = true; documentHandler.startFontFace(); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + declaration(); + break; + default: + jj_la1[53] = jj_gen; + ; + } + label_39: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case SEMICOLON: + ; + break; + default: + jj_la1[54] = jj_gen; + break label_39; } - Token xsp; + jj_consume_token(SEMICOLON); + label_40: while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3R_247() { - if (jj_3R_260()) { - return true; - } - return false; - } - - private boolean jj_3R_246() { - if (jj_3R_259()) { - return true; - } - return false; - } - - private boolean jj_3R_245() { - if (jj_3R_258()) { - return true; - } - return false; - } - - private boolean jj_3R_298() { - if (jj_scan_token(IDENT)) { - return true; - } - return false; - } - - private boolean jj_3R_281() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_298()) { - jj_scanpos = xsp; - if (jj_3R_299()) { - return true; - } - } - return false; - } - - private boolean jj_3R_297() { - if (jj_3R_219()) { - return true; - } - return false; - } - - private boolean jj_3_5() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_180()) { - jj_scanpos = xsp; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[55] = jj_gen; + break label_40; + } + jj_consume_token(S); } - if (jj_3R_181()) { - return true; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + declaration(); + break; + default: + jj_la1[56] = jj_gen; + ; + } + } + jj_consume_token(RBRACE); + label_41: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[57] = jj_gen; + break label_41; } - return false; - } + jj_consume_token(S); + } + } catch (ParseException e) { + reportError(getLocator(), e); + skipStatement(); + // reportWarningSkipText(getLocator(), skipStatement()); - private boolean jj_3R_218() { - if (jj_scan_token(DOT)) { - return true; - } - Token xsp; - if (jj_3R_281()) { - return true; - } - while (true) { - xsp = jj_scanpos; - if (jj_3R_281()) { - jj_scanpos = xsp; - break; - } - } - return false; + } finally { + if (start) { + documentHandler.endFontFace(); + } } + } - private boolean jj_3R_295() { - if (jj_3R_218()) { - return true; +/** + * @exception ParseException exception during the parse + */ + final public void atRuleDeclaration() throws ParseException { + Token n; + String ret; + n = jj_consume_token(ATKEYWORD); + ret=skipStatement(); + if ((ret != null) && (ret.charAt(0) == '@')) { + documentHandler.unrecognizedRule(ret); + } else { + reportWarningSkipText(getLocator(), ret); } - return false; - } + } + + final public void skipUnknownRule() throws ParseException { + Token n; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case ATKEYWORD: + n = jj_consume_token(ATKEYWORD); + break; + case CDO: + n = jj_consume_token(CDO); + break; + case CHARSET_SYM: + n = jj_consume_token(CHARSET_SYM); + break; + case COMMA: + n = jj_consume_token(COMMA); + break; + case DASHMATCH: + n = jj_consume_token(DASHMATCH); + break; + case FONT_FACE_SYM: + n = jj_consume_token(FONT_FACE_SYM); + break; + case FUNCTION: + n = jj_consume_token(FUNCTION); + break; + case IMPORTANT_SYM: + n = jj_consume_token(IMPORTANT_SYM); + break; + case IMPORT_SYM: + n = jj_consume_token(IMPORT_SYM); + break; + case INCLUDES: + n = jj_consume_token(INCLUDES); + break; + case LBRACE: + n = jj_consume_token(LBRACE); + break; + case MEDIA_SYM: + n = jj_consume_token(MEDIA_SYM); + break; + case NONASCII: + n = jj_consume_token(NONASCII); + break; + case NUMBER: + n = jj_consume_token(NUMBER); + break; + case PAGE_SYM: + n = jj_consume_token(PAGE_SYM); + break; + case PERCENTAGE: + n = jj_consume_token(PERCENTAGE); + break; + case STRING: + n = jj_consume_token(STRING); + break; + case UNICODERANGE: + n = jj_consume_token(UNICODERANGE); + break; + case URL: + n = jj_consume_token(URL); + break; + case SEMICOLON: + n = jj_consume_token(SEMICOLON); + break; + case MINUS: + n = jj_consume_token(MINUS); + break; + case UNKNOWN: + n = jj_consume_token(UNKNOWN); + break; + default: + jj_la1[58] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + String ret; + Locator loc = getLocator(); + ret=skipStatement(); + if ((ret != null) && (n.image.charAt(0) == '@')) { + documentHandler.unrecognizedRule(ret); + } else { + reportWarningSkipText(loc, ret); + } + } - private boolean jj_3R_290() { - if (jj_3R_218()) { - return true; - } - return false; - } +/** + * @exception ParseException exception during the parse + */ + final public char combinator() throws ParseException { +char connector = ' '; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + connector = combinatorChar(); + break; + case S: + jj_consume_token(S); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + connector = combinatorChar(); + break; + default: + jj_la1[59] = jj_gen; + ; + } + break; + default: + jj_la1[60] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + {if (true) return connector;} + throw new Error("Missing return statement in function"); + } + +/**to refactor combinator and reuse in selector().*/ + final public char combinatorChar() throws ParseException { + Token t; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + t = jj_consume_token(PLUS); + break; + case PRECEDES: + t = jj_consume_token(PRECEDES); + break; + case SIBLING: + t = jj_consume_token(SIBLING); + break; + default: + jj_la1[61] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + label_42: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[62] = jj_gen; + break label_42; + } + jj_consume_token(S); + } + {if (true) return t.image.charAt(0);} + throw new Error("Missing return statement in function"); + } + + final public void microsoftExtension() throws ParseException { + Token n; + String name = ""; + String value = ""; + // This is not really taking the syntax of filter rules into account + n = jj_consume_token(MICROSOFT_RULE); + label_43: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[63] = jj_gen; + break label_43; + } + jj_consume_token(S); + } + name = n.image; + jj_consume_token(COLON); + label_44: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IDENT: + n = jj_consume_token(IDENT); + value += n.image; + break; + case NUMBER: + n = jj_consume_token(NUMBER); + value += n.image; + break; + case STRING: + n = jj_consume_token(STRING); + value += n.image; + break; + case COMMA: + n = jj_consume_token(COMMA); + value += n.image; + break; + case INTERPOLATION: + n = jj_consume_token(INTERPOLATION); + value += n.image; + break; + case COLON: + n = jj_consume_token(COLON); + value += n.image; + break; + case FUNCTION: + n = jj_consume_token(FUNCTION); + value += n.image; + break; + case RPARAN: + n = jj_consume_token(RPARAN); + value += n.image; + break; + case EQ: + n = jj_consume_token(EQ); + value += n.image; + break; + case DOT: + n = jj_consume_token(DOT); + value += n.image; + break; + case S: + n = jj_consume_token(S); + if(value.lastIndexOf(' ') != value.length()-1) + { value += n.image; } + break; + default: + jj_la1[64] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + case EQ: + case COMMA: + case DOT: + case RPARAN: + case COLON: + case INTERPOLATION: + case STRING: + case IDENT: + case NUMBER: + case FUNCTION: + ; + break; + default: + jj_la1[65] = jj_gen; + break label_44; + } + } + jj_consume_token(SEMICOLON); + label_45: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[66] = jj_gen; + break label_45; + } + jj_consume_token(S); + } + documentHandler.microsoftDirective(name, value); + } - private boolean jj_3R_292() { - if (jj_3R_219()) { - return true; - } - return false; - } +/** + * @exception ParseException exception during the parse + */ + final public String property() throws ParseException { + Token t;String s = ""; + label_46: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IDENT: + t = jj_consume_token(IDENT); + s += t.image; + break; + case INTERPOLATION: + t = jj_consume_token(INTERPOLATION); + s += t.image; + break; + default: + jj_la1[67] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + ; + break; + default: + jj_la1[68] = jj_gen; + break label_46; + } + } + label_47: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[69] = jj_gen; + break label_47; + } + jj_consume_token(S); + } + {if (true) return s;} + throw new Error("Missing return statement in function"); + } + + final public String variableName() throws ParseException { + Token n; + n = jj_consume_token(VARIABLE); + label_48: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[70] = jj_gen; + break label_48; + } + jj_consume_token(S); + } + {if (true) return convertIdent(n.image.substring(1));} + throw new Error("Missing return statement in function"); + } + + final public String functionName() throws ParseException { + Token n; + n = jj_consume_token(FUNCTION); + label_49: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[71] = jj_gen; + break label_49; + } + jj_consume_token(S); + } + {if (true) return convertIdent(n.image.substring(0, n.image.length()-1));} + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_280() { - if (jj_3R_219()) { - return true; +/** + * @exception ParseException exception during the parse + */ + final public void styleRule() throws ParseException { + boolean start = false; + ArrayList l = null; + Token save; + Locator loc; + try { + l = selectorList(); + save = token; + jj_consume_token(LBRACE); + label_50: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[72] = jj_gen; + break label_50; + } + jj_consume_token(S); + } + start = true; + documentHandler.startSelector(l); + label_51: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case INCLUDE_SYM: + case DEBUG_SYM: + case WARN_SYM: + case EACH_SYM: + case IF_SYM: + case EXTEND_SYM: + case CONTENT_SYM: + case MICROSOFT_RULE: + case IDENT: + case VARIABLE: + case HASH: + case IMPORT_SYM: + case MEDIA_SYM: + case KEY_FRAME_SYM: + case ATKEYWORD: + ; + break; + default: + jj_la1[73] = jj_gen; + break label_51; } - return false; - } - - private boolean jj_3R_283() { - if (jj_3R_218()) { - return true; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case INCLUDE_SYM: + case DEBUG_SYM: + case WARN_SYM: + case EACH_SYM: + case IF_SYM: + case EXTEND_SYM: + case CONTENT_SYM: + case IDENT: + case VARIABLE: + case HASH: + case MEDIA_SYM: + case KEY_FRAME_SYM: + case ATKEYWORD: + ifContentStatement(); + break; + case MICROSOFT_RULE: + microsoftExtension(); + break; + case IMPORT_SYM: + importDeclaration(); + break; + default: + jj_la1[74] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + jj_consume_token(RBRACE); + label_52: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[75] = jj_gen; + break label_52; + } + jj_consume_token(S); + } + } catch (ThrowedParseException e) { + if (errorHandler != null) { + LocatorImpl li = new LocatorImpl(this, + e.e.currentToken.next.beginLine, + e.e.currentToken.next.beginColumn-1); + reportError(li, e.e); + } + } catch (ParseException e) { + reportError(getLocator(), e); + skipStatement(); + // reportWarningSkipText(getLocator(), skipStatement()); + + } catch (TokenMgrError e) { + reportWarningSkipText(getLocator(), skipStatement()); + } finally { + if (start) { + documentHandler.endSelector(); + } + } + } + + final public ArrayList selectorList() throws ParseException { + ArrayList selectors = new ArrayList(); + String selector; + selector = selector(); + label_53: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COMMA: + ; + break; + default: + jj_la1[76] = jj_gen; + break label_53; + } + jj_consume_token(COMMA); + label_54: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[77] = jj_gen; + break label_54; } - return false; + jj_consume_token(S); + } + selectors.add(selector); + selector = selector(); } + selectors.add(selector); + {if (true) return selectors;} + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_285() { - if (jj_3R_219()) { - return true; - } - return false; - } +/** + * @exception ParseException exception during the parse + */ + final public String selector() throws ParseException { + String selector = null; + char comb; + try { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case IDENT: + case HASH: + selector = simple_selector(null, ' '); + break; + case PLUS: + case PRECEDES: + case SIBLING: + comb = combinatorChar(); + selector = simple_selector(selector, comb); + break; + default: + jj_la1[78] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + label_55: + while (true) { + if (jj_2_2(2)) { + ; + } else { + break label_55; + } + comb = combinator(); + selector = simple_selector(selector, comb); + } + label_56: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[79] = jj_gen; + break label_56; + } + jj_consume_token(S); + } + {if (true) return selector;} + } catch (ParseException e) { + /* + Token t = getToken(1); + StringBuffer s = new StringBuffer(); + s.append(getToken(0).image); + while ((t.kind != COMMA) && (t.kind != SEMICOLON) + && (t.kind != LBRACE) && (t.kind != EOF)) { + s.append(t.image); + getNextToken(); + t = getToken(1); + } + reportWarningSkipText(getLocator(), s.toString()); + */ + Token t = getToken(1); + while ((t.kind != COMMA) && (t.kind != SEMICOLON) + && (t.kind != LBRACE) && (t.kind != EOF)) { + getNextToken(); + t = getToken(1); + } - private boolean jj_3R_296() { - if (jj_3R_220()) { - return true; - } - return false; + {if (true) throw new ThrowedParseException(e);} } + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_273() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_294()) { - jj_scanpos = xsp; - if (jj_3R_295()) { - jj_scanpos = xsp; - if (jj_3R_296()) { - jj_scanpos = xsp; - if (jj_3R_297()) { - return true; - } - } - } +/** + * @exception ParseException exception during the parse + */ + final public String simple_selector(String selector, char comb) throws ParseException { + String simple_current = null; + String cond = null; + + pseudoElt = null; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case ANY: + case PARENT: + case INTERPOLATION: + case IDENT: + simple_current = element_name(); + label_57: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case LBRACKET: + case DOT: + case COLON: + case HASH: + ; + break; + default: + jj_la1[80] = jj_gen; + break label_57; } - return false; - } - - private boolean jj_3R_294() { - if (jj_3R_217()) { - return true; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case HASH: + cond = hash(cond); + break; + case DOT: + cond = _class(cond); + break; + case LBRACKET: + cond = attrib(cond); + break; + case COLON: + cond = pseudo(cond); + break; + default: + jj_la1[81] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + break; + case HASH: + cond = hash(cond); + label_58: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case LBRACKET: + case DOT: + case COLON: + ; + break; + default: + jj_la1[82] = jj_gen; + break label_58; } - return false; - } - - private boolean jj_3R_272() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_289()) { - jj_scanpos = xsp; - if (jj_3R_290()) { - jj_scanpos = xsp; - if (jj_3R_291()) { - jj_scanpos = xsp; - if (jj_3R_292()) { - return true; - } - } - } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case DOT: + cond = _class(cond); + break; + case LBRACKET: + cond = attrib(cond); + break; + case COLON: + cond = pseudo(cond); + break; + default: + jj_la1[83] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + break; + case DOT: + cond = _class(cond); + label_59: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case LBRACKET: + case DOT: + case COLON: + case HASH: + ; + break; + default: + jj_la1[84] = jj_gen; + break label_59; } - return false; - } - - private boolean jj_3R_289() { - if (jj_3R_217()) { - return true; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case HASH: + cond = hash(cond); + break; + case DOT: + cond = _class(cond); + break; + case LBRACKET: + cond = attrib(cond); + break; + case COLON: + cond = pseudo(cond); + break; + default: + jj_la1[85] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + break; + case COLON: + cond = pseudo(cond); + label_60: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case LBRACKET: + case DOT: + case COLON: + case HASH: + ; + break; + default: + jj_la1[86] = jj_gen; + break label_60; } - return false; - } - - private boolean jj_3R_277() { - if (jj_3R_219()) { - return true; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case HASH: + cond = hash(cond); + break; + case DOT: + cond = _class(cond); + break; + case LBRACKET: + cond = attrib(cond); + break; + case COLON: + cond = pseudo(cond); + break; + default: + jj_la1[87] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + break; + case LBRACKET: + cond = attrib(cond); + label_61: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case LBRACKET: + case DOT: + case COLON: + case HASH: + ; + break; + default: + jj_la1[88] = jj_gen; + break label_61; } - return false; - } - - private boolean jj_3R_271() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_282()) { - jj_scanpos = xsp; - if (jj_3R_283()) { - jj_scanpos = xsp; - if (jj_3R_284()) { - jj_scanpos = xsp; - if (jj_3R_285()) { - return true; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case HASH: + cond = hash(cond); + break; + case DOT: + cond = _class(cond); + break; + case LBRACKET: + cond = attrib(cond); + break; + case COLON: + cond = pseudo(cond); + break; + default: + jj_la1[89] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + break; + default: + jj_la1[90] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + if (simple_current == null) { + simple_current = ""; + } + if (cond != null) { + simple_current = simple_current + cond; + } + StringBuilder builder = new StringBuilder(); + switch (comb) { + case ' ': + if(selector!=null){ + builder.append(selector).append(" "); } - } + break; + case '+': + case '>': + case '~': + if(selector!=null){ + builder.append(selector).append(" "); + } + builder.append(comb).append(" "); + break; + default: + {if (true) throw new ParseException("invalid state. send a bug report");} } - } - return false; - } - - private boolean jj_3R_282() { - if (jj_3R_217()) { - return true; - } - return false; - } - - private boolean jj_3R_291() { - if (jj_3R_220()) { - return true; - } - return false; - } - - private boolean jj_3R_279() { - if (jj_3R_220()) { - return true; - } - return false; - } - - private boolean jj_3R_284() { - if (jj_3R_220()) { - return true; - } - return false; - } + builder.append(simple_current); + selector = builder.toString(); - private boolean jj_3R_270() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_278()) { - jj_scanpos = xsp; - if (jj_3R_279()) { - jj_scanpos = xsp; - if (jj_3R_280()) { - return true; - } + if (pseudoElt != null) { + selector = selector + pseudoElt; } - } - return false; - } + {if (true) return selector;} + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_275() { - if (jj_3R_218()) { - return true; - } - return false; - } +/** + * @exception ParseException exception during the parse + */ + final public String _class(String pred) throws ParseException { + Token t; +String s = "."; + jj_consume_token(DOT); + label_62: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IDENT: + t = jj_consume_token(IDENT); + s += t.image; + break; + case INTERPOLATION: + t = jj_consume_token(INTERPOLATION); + s += t.image; + break; + default: + jj_la1[91] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + ; + break; + default: + jj_la1[92] = jj_gen; + break label_62; + } + } + if (pred == null) { + {if (true) return s;} + } else { + {if (true) return pred + s;} + } + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_278() { - if (jj_3R_218()) { - return true; +/** + * @exception ParseException exception during the parse + */ + final public String element_name() throws ParseException { + Token t; String s = ""; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + label_63: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IDENT: + t = jj_consume_token(IDENT); + s += t.image; + break; + case INTERPOLATION: + t = jj_consume_token(INTERPOLATION); + s += t.image; + break; + default: + jj_la1[93] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); } - return false; - } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + ; + break; + default: + jj_la1[94] = jj_gen; + break label_63; + } + } + {if (true) return s;} + break; + case ANY: + jj_consume_token(ANY); + {if (true) return "*";} + break; + case PARENT: + jj_consume_token(PARENT); + {if (true) return "&";} + break; + default: + jj_la1[95] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_257() { - if (jj_scan_token(DOT)) { - return true; - } - return false; - } +/** + * @exception ParseException exception during the parse + */ + final public String attrib(String pred) throws ParseException { + int cases = 0; + Token att = null; + Token val = null; + String attValue = null; + jj_consume_token(LBRACKET); + label_64: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[96] = jj_gen; + break label_64; + } + jj_consume_token(S); + } + att = jj_consume_token(IDENT); + label_65: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[97] = jj_gen; + break label_65; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case DASHMATCH: + case CARETMATCH: + case DOLLARMATCH: + case STARMATCH: + case INCLUDES: + case EQ: + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case EQ: + jj_consume_token(EQ); + cases = 1; + break; + case INCLUDES: + jj_consume_token(INCLUDES); + cases = 2; + break; + case DASHMATCH: + jj_consume_token(DASHMATCH); + cases = 3; + break; + case CARETMATCH: + jj_consume_token(CARETMATCH); + cases = 4; + break; + case DOLLARMATCH: + jj_consume_token(DOLLARMATCH); + cases = 5; + break; + case STARMATCH: + jj_consume_token(STARMATCH); + cases = 6; + break; + default: + jj_la1[98] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + label_66: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[99] = jj_gen; + break label_66; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IDENT: + val = jj_consume_token(IDENT); + attValue = val.image; + break; + case STRING: + val = jj_consume_token(STRING); + attValue = val.image; + break; + default: + jj_la1[100] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + label_67: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[101] = jj_gen; + break label_67; + } + jj_consume_token(S); + } + break; + default: + jj_la1[102] = jj_gen; + ; + } + jj_consume_token(RBRACKET); + String name = convertIdent(att.image); + String c; + switch (cases) { + case 0: + c = name; + break; + case 1: + c = name + "=" + attValue; + break; + case 2: + c = name + "~=" + attValue; + break; + case 3: + c = name + "|=" +attValue; + break; + case 4: + c = name + "^=" +attValue; + break; + case 5: + c = name + "$=" +attValue; + break; + case 6: + c = name + "*=" +attValue; + break; + default: + // never reached. + c = null; + } + c = "[" + c + "]"; + if (pred == null) { + {if (true) return c;} + } else { + {if (true) return pred + c;} + } + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_244() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_257()) { - jj_scanpos = xsp; - } - xsp = jj_scanpos; - if (jj_scan_token(72)) { - jj_scanpos = xsp; - if (jj_scan_token(49)) { - jj_scanpos = xsp; - if (jj_scan_token(50)) { - jj_scanpos = xsp; - if (jj_scan_token(52)) { - return true; - } +/** + * @exception ParseException exception during the parse + */ + final public String pseudo(String pred) throws ParseException { + Token n; +Token param; +String d; +boolean isPseudoElement = false; + jj_consume_token(COLON); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COLON: + jj_consume_token(COLON); + isPseudoElement=true; + break; + default: + jj_la1[103] = jj_gen; + ; + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IDENT: + n = jj_consume_token(IDENT); + String s = ":" + convertIdent(n.image); + if (isPseudoElement) { + if (pseudoElt != null) { + {if (true) throw new CSSParseException("duplicate pseudo element definition " + + s, getLocator());} + } else { + pseudoElt = ":"+s; + {if (true) return pred;} } - } - } - return false; - } - - private boolean jj_3R_243() { - if (jj_scan_token(STRING)) { - return true; - } - return false; - } - - private boolean jj_3R_242() { - if (jj_3R_256()) { - return true; - } - return false; - } - - private boolean jj_3R_199() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_243()) { - jj_scanpos = xsp; - if (jj_3R_244()) { - jj_scanpos = xsp; - if (jj_3R_245()) { - jj_scanpos = xsp; - if (jj_3R_246()) { - jj_scanpos = xsp; - if (jj_3R_247()) { - return true; - } - } + } else { + String c = s; + if (pred == null) { + {if (true) return c;} + } else { + {if (true) return pred + c;} } } - } - return false; - } + break; + case FUNCTION: + n = jj_consume_token(FUNCTION); + label_68: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[104] = jj_gen; + break label_68; + } + jj_consume_token(S); + } + d = skipStatementUntilRightParan(); + jj_consume_token(RPARAN); + // accept anything between function and a right parenthesis + String f = convertIdent(n.image); + String colons = isPseudoElement ? "::" : ":"; + String pseudofn = colons + f + d + ")"; + if (pred == null) { + {if (true) return pseudofn;} + } else { + {if (true) return pred + pseudofn;} + } + break; + default: + jj_la1[105] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_196() { - if (jj_3R_220()) { - return true; - } - Token xsp; +/** + * @exception ParseException exception during the parse + */ + final public String hash(String pred) throws ParseException { + Token n; + n = jj_consume_token(HASH); + String d = n.image; + if (pred == null) { + {if (true) return d;} + } else { + {if (true) return pred + d;} + } + throw new Error("Missing return statement in function"); + } + + final public void variable() throws ParseException { + String name; + LexicalUnitImpl exp = null; + boolean guarded = false; + String raw; + try { + name = variableName(); + jj_consume_token(COLON); + label_69: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[106] = jj_gen; + break label_69; + } + jj_consume_token(S); + } + exp = expr(); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case GUARDED_SYM: + guarded = guarded(); + break; + default: + jj_la1[107] = jj_gen; + ; + } + label_70: + while (true) { + jj_consume_token(SEMICOLON); + label_71: while (true) { - xsp = jj_scanpos; - if (jj_3R_273()) { - jj_scanpos = xsp; - break; - } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[108] = jj_gen; + break label_71; + } + jj_consume_token(S); } - return false; - } - - private boolean jj_3R_195() { - if (jj_3R_219()) { - return true; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case SEMICOLON: + ; + break; + default: + jj_la1[109] = jj_gen; + break label_70; } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3R_272()) { - jj_scanpos = xsp; - break; + } + documentHandler.variable(name, exp, guarded); + } catch (JumpException e) { + skipAfterExpression(); + } catch (NumberFormatException e) { + if (errorHandler != null) { + errorHandler.error(new CSSParseException("Invalid number " + + e.getMessage(), + getLocator(), + e)); } - } - return false; - } - - private boolean jj_3R_276() { - if (jj_3R_220()) { - return true; - } - return false; - } - - private boolean jj_3R_194() { - if (jj_3R_218()) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3R_271()) { - jj_scanpos = xsp; - break; + reportWarningSkipText(getLocator(), skipAfterExpression()); + } catch (ParseException e) { + if (errorHandler != null) { + if (e.currentToken != null) { + LocatorImpl li = new LocatorImpl(this, + e.currentToken.next.beginLine, + e.currentToken.next.beginColumn-1); + reportError(li, e); + } else { + reportError(getLocator(), e); } - } - return false; - } - - private boolean jj_3R_193() { - if (jj_3R_217()) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3R_270()) { - jj_scanpos = xsp; - break; + skipAfterExpression(); + } else { + skipAfterExpression(); } - } - return false; } - - private boolean jj_3R_269() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_274()) { - jj_scanpos = xsp; - if (jj_3R_275()) { - jj_scanpos = xsp; - if (jj_3R_276()) { - jj_scanpos = xsp; - if (jj_3R_277()) { - return true; - } - } - } + } + + final public void controlDirective() throws ParseException { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IF_SYM: + ifDirective(); + break; + case EACH_SYM: + eachDirective(); + break; + default: + jj_la1[110] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + + final public void ifContentStatement() throws ParseException { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case CONTENT_SYM: + contentDirective(); + break; + case INCLUDE_SYM: + includeDirective(); + break; + case MEDIA_SYM: + media(); + break; + case EXTEND_SYM: + extendDirective(); + break; + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case DEBUG_SYM: + case WARN_SYM: + case IDENT: + case HASH: + styleRuleOrDeclarationOrNestedProperties(); + break; + case KEY_FRAME_SYM: + keyframes(); + break; + default: + jj_la1[111] = jj_gen; + if (jj_2_3(2147483647)) { + variable(); + } else { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case VARIABLE: + listModifyDirective(); + break; + case EACH_SYM: + case IF_SYM: + controlDirective(); + break; + case ATKEYWORD: + atRuleDeclaration(); + break; + default: + jj_la1[112] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + } + } + + final public void ifDirective() throws ParseException { + Token n = null; + String s = null; + String evaluator = ""; + jj_consume_token(IF_SYM); + label_72: + while (true) { + s = booleanExpressionToken(); + evaluator += s; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + case EQ: + case PLUS: + case MINUS: + case PRECEDES: + case SUCCEEDS: + case DIV: + case ANY: + case LPARAN: + case RPARAN: + case COMPARE: + case OR: + case AND: + case NOT_EQ: + case IDENT: + case NUMBER: + case VARIABLE: + case CONTAINS: + ; + break; + default: + jj_la1[113] = jj_gen; + break label_72; + } + } + jj_consume_token(LBRACE); + label_73: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[114] = jj_gen; + break label_73; + } + jj_consume_token(S); + } + documentHandler.startIfElseDirective(); + documentHandler.ifDirective(evaluator); + label_74: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case INCLUDE_SYM: + case DEBUG_SYM: + case WARN_SYM: + case EACH_SYM: + case IF_SYM: + case EXTEND_SYM: + case CONTENT_SYM: + case IDENT: + case VARIABLE: + case HASH: + case MEDIA_SYM: + case FONT_FACE_SYM: + case KEY_FRAME_SYM: + case ATKEYWORD: + ; + break; + default: + jj_la1[115] = jj_gen; + break label_74; + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case INCLUDE_SYM: + case DEBUG_SYM: + case WARN_SYM: + case EACH_SYM: + case IF_SYM: + case EXTEND_SYM: + case CONTENT_SYM: + case IDENT: + case VARIABLE: + case HASH: + case MEDIA_SYM: + case KEY_FRAME_SYM: + case ATKEYWORD: + ifContentStatement(); + break; + case FONT_FACE_SYM: + fontFace(); + break; + default: + jj_la1[116] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + jj_consume_token(RBRACE); + label_75: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[117] = jj_gen; + break label_75; + } + jj_consume_token(S); + } + label_76: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case ELSE_SYM: + ; + break; + default: + jj_la1[118] = jj_gen; + break label_76; + } + elseDirective(); + } + documentHandler.endIfElseDirective(); + } + + final public void elseDirective() throws ParseException { + String evaluator = ""; + Token n = null; + String s = null; + jj_consume_token(ELSE_SYM); + label_77: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[119] = jj_gen; + break label_77; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IF: + jj_consume_token(IF); + label_78: + while (true) { + s = booleanExpressionToken(); + evaluator += s; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + case EQ: + case PLUS: + case MINUS: + case PRECEDES: + case SUCCEEDS: + case DIV: + case ANY: + case LPARAN: + case RPARAN: + case COMPARE: + case OR: + case AND: + case NOT_EQ: + case IDENT: + case NUMBER: + case VARIABLE: + case CONTAINS: + ; + break; + default: + jj_la1[120] = jj_gen; + break label_78; + } + } + break; + default: + jj_la1[121] = jj_gen; + ; + } + jj_consume_token(LBRACE); + label_79: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[122] = jj_gen; + break label_79; + } + jj_consume_token(S); + } + if(!evaluator.trim().equals("")){ documentHandler.ifDirective(evaluator); } + else{ documentHandler.elseDirective(); } + label_80: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case INCLUDE_SYM: + case DEBUG_SYM: + case WARN_SYM: + case EACH_SYM: + case IF_SYM: + case EXTEND_SYM: + case CONTENT_SYM: + case IDENT: + case VARIABLE: + case HASH: + case MEDIA_SYM: + case FONT_FACE_SYM: + case KEY_FRAME_SYM: + case ATKEYWORD: + ; + break; + default: + jj_la1[123] = jj_gen; + break label_80; + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case INCLUDE_SYM: + case DEBUG_SYM: + case WARN_SYM: + case EACH_SYM: + case IF_SYM: + case EXTEND_SYM: + case CONTENT_SYM: + case IDENT: + case VARIABLE: + case HASH: + case MEDIA_SYM: + case KEY_FRAME_SYM: + case ATKEYWORD: + ifContentStatement(); + break; + case FONT_FACE_SYM: + fontFace(); + break; + default: + jj_la1[124] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + jj_consume_token(RBRACE); + label_81: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[125] = jj_gen; + break label_81; + } + jj_consume_token(S); + } + } + + final public String booleanExpressionToken() throws ParseException { + Token n = null; + String s = null; + if (jj_2_4(2147483647)) { + s = containsDirective(); + } else { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case VARIABLE: + n = jj_consume_token(VARIABLE); + break; + case IDENT: + n = jj_consume_token(IDENT); + break; + case NUMBER: + n = jj_consume_token(NUMBER); + break; + case LPARAN: + n = jj_consume_token(LPARAN); + break; + case RPARAN: + n = jj_consume_token(RPARAN); + break; + case PLUS: + n = jj_consume_token(PLUS); + break; + case MINUS: + n = jj_consume_token(MINUS); + break; + case DIV: + n = jj_consume_token(DIV); + break; + case ANY: + n = jj_consume_token(ANY); + break; + case COMPARE: + n = jj_consume_token(COMPARE); + break; + case EQ: + n = jj_consume_token(EQ); + break; + case PRECEDES: + n = jj_consume_token(PRECEDES); + break; + case SUCCEEDS: + n = jj_consume_token(SUCCEEDS); + break; + case OR: + n = jj_consume_token(OR); + break; + case AND: + n = jj_consume_token(AND); + break; + case S: + n = jj_consume_token(S); + break; + case NOT_EQ: + n = jj_consume_token(NOT_EQ); + break; + default: + jj_la1[126] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + if(n!=null){{if (true) return n.image;}} + else{{if (true) return s;}} + throw new Error("Missing return statement in function"); + } + + final public void eachDirective() throws ParseException { + Token var; + ArrayList list = null; + String listVariable = null; + jj_consume_token(EACH_SYM); + label_82: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[127] = jj_gen; + break label_82; + } + jj_consume_token(S); + } + var = jj_consume_token(VARIABLE); + label_83: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[128] = jj_gen; + break label_83; + } + jj_consume_token(S); + } + jj_consume_token(EACH_IN); + label_84: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[129] = jj_gen; + break label_84; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IDENT: + list = stringList(); + documentHandler.startEachDirective(var.image, list); + break; + case VARIABLE: + listVariable = variableName(); + documentHandler.startEachDirective(var.image, listVariable); + break; + default: + jj_la1[130] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + jj_consume_token(LBRACE); + label_85: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[131] = jj_gen; + break label_85; + } + jj_consume_token(S); + } + label_86: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case INCLUDE_SYM: + case DEBUG_SYM: + case WARN_SYM: + case EACH_SYM: + case IF_SYM: + case EXTEND_SYM: + case CONTENT_SYM: + case IDENT: + case VARIABLE: + case HASH: + case MEDIA_SYM: + case KEY_FRAME_SYM: + case ATKEYWORD: + ; + break; + default: + jj_la1[132] = jj_gen; + break label_86; + } + ifContentStatement(); + } + jj_consume_token(RBRACE); + label_87: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[133] = jj_gen; + break label_87; + } + jj_consume_token(S); + } + documentHandler.endEachDirective(); + } + + final public ArrayList stringList() throws ParseException { + ArrayList strings = new ArrayList(); + Token input; + input = jj_consume_token(IDENT); + label_88: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[134] = jj_gen; + break label_88; + } + jj_consume_token(S); + } + strings.add(input.image); + label_89: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COMMA: + ; + break; + default: + jj_la1[135] = jj_gen; + break label_89; + } + jj_consume_token(COMMA); + label_90: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[136] = jj_gen; + break label_90; + } + jj_consume_token(S); + } + input = jj_consume_token(IDENT); + strings.add(input.image); + label_91: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[137] = jj_gen; + break label_91; + } + jj_consume_token(S); + } + } + {if (true) return strings;} + throw new Error("Missing return statement in function"); + } + + final public void mixinDirective() throws ParseException { + String name; + ArrayList args = null; + String body; + jj_consume_token(MIXIN_SYM); + label_92: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[138] = jj_gen; + break label_92; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + name = property(); + break; + case FUNCTION: + name = functionName(); + args = arglist(); + jj_consume_token(RPARAN); + label_93: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[139] = jj_gen; + break label_93; + } + jj_consume_token(S); + } + break; + default: + jj_la1[140] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + jj_consume_token(LBRACE); + label_94: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[141] = jj_gen; + break label_94; + } + jj_consume_token(S); + } + documentHandler.startMixinDirective(name, args); + label_95: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case INCLUDE_SYM: + case DEBUG_SYM: + case WARN_SYM: + case EACH_SYM: + case IF_SYM: + case EXTEND_SYM: + case CONTENT_SYM: + case IDENT: + case VARIABLE: + case HASH: + case MEDIA_SYM: + case PAGE_SYM: + case FONT_FACE_SYM: + case KEY_FRAME_SYM: + case ATKEYWORD: + ; + break; + default: + jj_la1[142] = jj_gen; + break label_95; + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case INCLUDE_SYM: + case DEBUG_SYM: + case WARN_SYM: + case EACH_SYM: + case IF_SYM: + case EXTEND_SYM: + case CONTENT_SYM: + case IDENT: + case VARIABLE: + case HASH: + case MEDIA_SYM: + case KEY_FRAME_SYM: + case ATKEYWORD: + ifContentStatement(); + break; + case FONT_FACE_SYM: + fontFace(); + break; + case PAGE_SYM: + page(); + break; + default: + jj_la1[143] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + jj_consume_token(RBRACE); + label_96: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[144] = jj_gen; + break label_96; + } + jj_consume_token(S); + } + documentHandler.endMixinDirective(name, args); + } + + final public ArrayList arglist() throws ParseException { + ArrayList args = new ArrayList(); + VariableNode arg; + boolean hasNonOptionalArgument = false; + arg = mixinArg(); + label_97: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COMMA: + ; + break; + default: + jj_la1[145] = jj_gen; + break label_97; + } + jj_consume_token(COMMA); + label_98: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[146] = jj_gen; + break label_98; } - return false; + jj_consume_token(S); + } + hasNonOptionalArgument = checkMixinForNonOptionalArguments(arg, hasNonOptionalArgument); args.add(arg); + arg = mixinArg(); } + hasNonOptionalArgument = checkMixinForNonOptionalArguments(arg, hasNonOptionalArgument); args.add(arg); + {if (true) return args;} + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_274() { - if (jj_3R_217()) { - return true; - } - return false; - } + boolean checkMixinForNonOptionalArguments(VariableNode arg, boolean hasNonOptionalArguments) throws ParseException { + boolean currentArgHasArguments = arg.getExpr() != null && arg.getExpr().getLexicalUnitType() == LexicalUnitImpl.SCSS_VARIABLE && arg.getExpr().getNextLexicalUnit() != null; - private boolean jj_3R_192() { - if (jj_3R_216()) { - return true; + if(currentArgHasArguments) + { + if(hasNonOptionalArguments) + { + throw new ParseException("Sass Error: Required argument $"+ arg.getName() +" must come before any optional arguments."); + } + return hasNonOptionalArguments; + }else + { + return true; + } + } + + final public VariableNode mixinArg() throws ParseException { + String name; + Token variable = null; + LexicalUnitImpl first = null; + LexicalUnitImpl prev = null; + LexicalUnitImpl next = null; + name = variableName(); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COLON: + case VARIABLE: + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COLON: + jj_consume_token(COLON); + label_99: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[147] = jj_gen; + break label_99; + } + jj_consume_token(S); } - Token xsp; + first = nonVariableTerm(null); + prev = first; + label_100: while (true) { - xsp = jj_scanpos; - if (jj_3R_269()) { - jj_scanpos = xsp; + if (jj_2_5(3)) { + ; + } else { + break label_100; + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COMMA: + jj_consume_token(COMMA); + label_101: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; break; + default: + jj_la1[148] = jj_gen; + break label_101; + } + jj_consume_token(S); } - } - return false; - } - - private boolean jj_3R_241() { - if (jj_scan_token(DIMEN)) { - return true; - } - return false; - } - - private boolean jj_3R_178() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_192()) { - jj_scanpos = xsp; - if (jj_3R_193()) { - jj_scanpos = xsp; - if (jj_3R_194()) { - jj_scanpos = xsp; - if (jj_3R_195()) { - jj_scanpos = xsp; - if (jj_3R_196()) { - return true; - } - } - } - } - } - return false; - } - - private boolean jj_3R_240() { - if (jj_scan_token(KHZ)) { - return true; - } - return false; - } - - private boolean jj_3R_249() { - if (jj_3R_214()) { - return true; - } - if (jj_3R_178()) { - return true; - } - return false; - } - - private boolean jj_3R_239() { - if (jj_scan_token(HZ)) { - return true; - } - return false; - } - - private boolean jj_3R_238() { - if (jj_scan_token(MS)) { - return true; - } - return false; - } - - private boolean jj_3R_237() { - if (jj_scan_token(SECOND)) { - return true; - } - return false; - } - - private boolean jj_3R_236() { - if (jj_scan_token(GRAD)) { - return true; - } - return false; - } - - private boolean jj_3R_235() { - if (jj_scan_token(RAD)) { - return true; - } - return false; + break; + default: + jj_la1[149] = jj_gen; + ; + } + prev = nonVariableTerm(prev); + } + break; + case VARIABLE: + variable = jj_consume_token(VARIABLE); + first = LexicalUnitImpl.createVariable(token.beginLine, token.beginColumn, + prev, variable.image); + break; + default: + jj_la1[150] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + break; + default: + jj_la1[151] = jj_gen; + ; } - - private boolean jj_3R_234() { - if (jj_scan_token(DEG)) { - return true; + VariableNode arg = new VariableNode(name, first, false); + {if (true) return arg;} + throw new Error("Missing return statement in function"); + } + + final public ArrayList argValuelist() throws ParseException { + ArrayList args = new ArrayList(); + LexicalUnitImpl first = null; + LexicalUnitImpl next = null; + LexicalUnitImpl prev = null; + first = term(null); + args.add(first); prev = first; + label_102: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case MINUS: + case DOT: + case COLON: + case TO: + case THROUGH: + case FROM: + case STRING: + case IDENT: + case NUMBER: + case URL: + case VARIABLE: + case PERCENTAGE: + case PT: + case MM: + case CM: + case PC: + case IN: + case PX: + case EMS: + case LEM: + case REM: + case EXS: + case DEG: + case RAD: + case GRAD: + case MS: + case SECOND: + case HZ: + case KHZ: + case DIMEN: + case HASH: + case UNICODERANGE: + case FUNCTION: + ; + break; + default: + jj_la1[152] = jj_gen; + break label_102; + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COLON: + jj_consume_token(COLON); + label_103: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[153] = jj_gen; + break label_103; + } + jj_consume_token(S); + } + break; + default: + jj_la1[154] = jj_gen; + ; + } + next = term(prev); + prev.setNextLexicalUnit(next); prev = next; + } + label_104: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COMMA: + ; + break; + default: + jj_la1[155] = jj_gen; + break label_104; + } + jj_consume_token(COMMA); + label_105: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[156] = jj_gen; + break label_105; + } + jj_consume_token(S); + } + first = term(null); + args.add(first); prev = first; + label_106: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case MINUS: + case DOT: + case COLON: + case TO: + case THROUGH: + case FROM: + case STRING: + case IDENT: + case NUMBER: + case URL: + case VARIABLE: + case PERCENTAGE: + case PT: + case MM: + case CM: + case PC: + case IN: + case PX: + case EMS: + case LEM: + case REM: + case EXS: + case DEG: + case RAD: + case GRAD: + case MS: + case SECOND: + case HZ: + case KHZ: + case DIMEN: + case HASH: + case UNICODERANGE: + case FUNCTION: + ; + break; + default: + jj_la1[157] = jj_gen; + break label_106; } - return false; - } - - private boolean jj_3R_233() { - if (jj_scan_token(EXS)) { - return true; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COLON: + jj_consume_token(COLON); + label_107: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[158] = jj_gen; + break label_107; + } + jj_consume_token(S); + } + break; + default: + jj_la1[159] = jj_gen; + ; + } + next = term(prev); + prev.setNextLexicalUnit(next); prev = next; + } + } + {if (true) return args;} + throw new Error("Missing return statement in function"); + } + + final public void includeDirective() throws ParseException { + String name; + ArrayList args=null; + jj_consume_token(INCLUDE_SYM); + label_108: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[160] = jj_gen; + break label_108; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + name = property(); + break; + case VARIABLE: + name = variableName(); + name = "$"+name; + break; + case FUNCTION: + name = functionName(); + args = argValuelist(); + jj_consume_token(RPARAN); + label_109: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[161] = jj_gen; + break label_109; + } + jj_consume_token(S); + } + break; + default: + jj_la1[162] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case SEMICOLON: + label_110: + while (true) { + jj_consume_token(SEMICOLON); + label_111: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[163] = jj_gen; + break label_111; + } + jj_consume_token(S); } - return false; - } - - private boolean jj_3R_232() { - if (jj_scan_token(REM)) { - return true; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case SEMICOLON: + ; + break; + default: + jj_la1[164] = jj_gen; + break label_110; } - return false; - } - - private boolean jj_3R_231() { - if (jj_scan_token(LEM)) { - return true; + } + documentHandler.includeDirective(name, args); + break; + case LBRACE: + jj_consume_token(LBRACE); + label_112: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[165] = jj_gen; + break label_112; + } + jj_consume_token(S); + } + documentHandler.startIncludeContentBlock(name, args); + label_113: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case TO: + case FROM: + case DEBUG_SYM: + case WARN_SYM: + case IDENT: + case PERCENTAGE: + case HASH: + ; + break; + default: + jj_la1[166] = jj_gen; + break label_113; } - return false; - } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case DEBUG_SYM: + case WARN_SYM: + case IDENT: + case HASH: + styleRuleOrDeclarationOrNestedProperties(); + break; + case TO: + case FROM: + case PERCENTAGE: + keyframeSelector(); + break; + default: + jj_la1[167] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + jj_consume_token(RBRACE); + label_114: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[168] = jj_gen; + break label_114; + } + jj_consume_token(S); + } + documentHandler.endIncludeContentBlock(); + break; + default: + jj_la1[169] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + + final public String interpolation() throws ParseException { + Token n; + n = jj_consume_token(INTERPOLATION); + {if (true) return n.image;} + throw new Error("Missing return statement in function"); + } + + final public void listModifyDirective() throws ParseException { + String list = null; + String remove = null; + String separator = null; + String variable = null; + Token n = null; + Token type = null; + //refactor, remove those 3 LOOKAHEAD(5). + n = jj_consume_token(VARIABLE); + variable = n.image; + label_115: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[170] = jj_gen; + break label_115; + } + jj_consume_token(S); + } + jj_consume_token(COLON); + label_116: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[171] = jj_gen; + break label_116; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case APPEND: + type = jj_consume_token(APPEND); + break; + case REMOVE: + type = jj_consume_token(REMOVE); + break; + case CONTAINS: + type = jj_consume_token(CONTAINS); + break; + default: + jj_la1[172] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + label_117: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[173] = jj_gen; + break label_117; + } + jj_consume_token(S); + } + list = listModifyDirectiveArgs(0); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case RPARAN: + jj_consume_token(RPARAN); + break; + default: + jj_la1[174] = jj_gen; + ; + } + jj_consume_token(COMMA); + label_118: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[175] = jj_gen; + break label_118; + } + jj_consume_token(S); + } + remove = listModifyDirectiveArgs(1); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COMMA: + jj_consume_token(COMMA); + label_119: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[176] = jj_gen; + break label_119; + } + jj_consume_token(S); + } + n = jj_consume_token(IDENT); + separator = n.image; + label_120: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[177] = jj_gen; + break label_120; + } + jj_consume_token(S); + } + break; + default: + jj_la1[178] = jj_gen; + ; + } + jj_consume_token(RPARAN); + switch (type.kind) { + case APPEND: + documentHandler.appendDirective(variable,list,remove,separator); + break; + case REMOVE: + documentHandler.removeDirective(variable,list,remove,separator); + break; + case CONTAINS: + if(variable == null){ + variable = "$var_"+UUID.randomUUID(); + } + documentHandler.containsDirective(variable,list,remove,separator); + break; + default: + break; + } + label_121: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[179] = jj_gen; + break label_121; + } + jj_consume_token(S); + } + jj_consume_token(SEMICOLON); + label_122: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[180] = jj_gen; + break label_122; + } + jj_consume_token(S); + } + } - private boolean jj_3R_230() { - if (jj_scan_token(EMS)) { - return true; +/** + * @exception ParseException exception during the parse + */ + final public void appendDirective() throws ParseException { + String list = null; + String remove = null; + String separator = null; + String variable = null; + Token n = null; + n = jj_consume_token(VARIABLE); + variable = n.image; + label_123: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[181] = jj_gen; + break label_123; + } + jj_consume_token(S); + } + jj_consume_token(COLON); + label_124: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[182] = jj_gen; + break label_124; + } + jj_consume_token(S); + } + jj_consume_token(APPEND); + label_125: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[183] = jj_gen; + break label_125; + } + jj_consume_token(S); + } + list = listModifyDirectiveArgs(0); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case RPARAN: + jj_consume_token(RPARAN); + break; + default: + jj_la1[184] = jj_gen; + ; + } + jj_consume_token(COMMA); + label_126: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[185] = jj_gen; + break label_126; + } + jj_consume_token(S); + } + remove = listModifyDirectiveArgs(1); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COMMA: + jj_consume_token(COMMA); + label_127: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[186] = jj_gen; + break label_127; + } + jj_consume_token(S); + } + n = jj_consume_token(IDENT); + separator = n.image; + label_128: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[187] = jj_gen; + break label_128; } - return false; + jj_consume_token(S); + } + break; + default: + jj_la1[188] = jj_gen; + ; } + jj_consume_token(RPARAN); + documentHandler.appendDirective(variable,list,remove,separator); + } - private boolean jj_3R_229() { - if (jj_scan_token(PX)) { - return true; +/** + * @exception ParseException exception during the parse + */ + final public void removeDirective() throws ParseException { + String list = null; + String remove = null; + String separator = null; + String variable = null; + Token n = null; + n = jj_consume_token(VARIABLE); + variable = n.image; + label_129: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[189] = jj_gen; + break label_129; + } + jj_consume_token(S); + } + jj_consume_token(COLON); + label_130: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[190] = jj_gen; + break label_130; + } + jj_consume_token(S); + } + jj_consume_token(REMOVE); + label_131: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[191] = jj_gen; + break label_131; + } + jj_consume_token(S); + } + list = listModifyDirectiveArgs(0); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case RPARAN: + jj_consume_token(RPARAN); + break; + default: + jj_la1[192] = jj_gen; + ; + } + jj_consume_token(COMMA); + label_132: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[193] = jj_gen; + break label_132; + } + jj_consume_token(S); + } + remove = listModifyDirectiveArgs(1); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COMMA: + jj_consume_token(COMMA); + label_133: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[194] = jj_gen; + break label_133; + } + jj_consume_token(S); + } + n = jj_consume_token(IDENT); + separator = n.image; + label_134: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[195] = jj_gen; + break label_134; } - return false; + jj_consume_token(S); + } + break; + default: + jj_la1[196] = jj_gen; + ; } + jj_consume_token(RPARAN); + documentHandler.removeDirective(variable,list,remove,separator); + } - private boolean jj_3_2() { - if (jj_3R_177()) { - return true; - } - if (jj_3R_178()) { - return true; - } - return false; - } +/** + * @exception ParseException exception during the parse + */ + final public String containsDirective() throws ParseException { + String list = null; + String remove = null; + String separator = null; + String variable = null; + Token n = null; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case VARIABLE: + n = jj_consume_token(VARIABLE); + variable = n.image; + label_135: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[197] = jj_gen; + break label_135; + } + jj_consume_token(S); + } + jj_consume_token(COLON); + label_136: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[198] = jj_gen; + break label_136; + } + jj_consume_token(S); + } + break; + default: + jj_la1[199] = jj_gen; + ; + } + jj_consume_token(CONTAINS); + label_137: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[200] = jj_gen; + break label_137; + } + jj_consume_token(S); + } + list = listModifyDirectiveArgs(0); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case RPARAN: + jj_consume_token(RPARAN); + break; + default: + jj_la1[201] = jj_gen; + ; + } + jj_consume_token(COMMA); + label_138: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[202] = jj_gen; + break label_138; + } + jj_consume_token(S); + } + remove = listModifyDirectiveArgs(1); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COMMA: + jj_consume_token(COMMA); + label_139: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[203] = jj_gen; + break label_139; + } + jj_consume_token(S); + } + n = jj_consume_token(IDENT); + separator = n.image; + label_140: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[204] = jj_gen; + break label_140; + } + jj_consume_token(S); + } + break; + default: + jj_la1[205] = jj_gen; + ; + } + jj_consume_token(RPARAN); + /* + *if it is not in the form like "$contains : contains($items, .v-button);" + *for example in @if, like "@if (contains(a b c, b))", then create a temp + *variable for contains(a b c, b); + */ + if(variable == null){ + variable = "$var_"+UUID.randomUUID(); + } + documentHandler.containsDirective(variable,list,remove,separator); + {if (true) return variable;} + throw new Error("Missing return statement in function"); + } + + String listModifyDirectiveArgs(int nest) throws ParseException { + String list = ""; + int nesting = nest; + Token t = null; - private boolean jj_3R_228() { - if (jj_scan_token(IN)) { - return true; - } - return false; - } + while(true) + { + t = getToken(1); + String s = t.image; + if(t.kind == VARIABLE||t.kind == IDENT) + { + list += s; + }else if(s.toLowerCase().equals("auto")||s.toLowerCase().equals("space")||s.toLowerCase().equals("comma")) + { + int i = 2; + Token temp = getToken(i); + boolean isLast = true; + while(temp.kind != SEMICOLON) + { + if(temp.kind != RPARAN || temp.kind != S) + { + isLast = false; + } + i++; + temp = getToken(i); + } - private boolean jj_3R_227() { - if (jj_scan_token(PC)) { - return true; - } - return false; - } + if(isLast) + { + return list; + } + } + else if(t.kind == STRING) + { + list += s.substring(1,s.length()).substring(0,s.length()-2); - private boolean jj_3R_201() { - if (jj_scan_token(COMMA)) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - if (jj_3R_200()) { - return true; - } - return false; - } + }else if(t.kind == LPARAN) + { + nesting++; + if(nesting > nest+1) + { + throw new CSSParseException("Only one ( ) pair per parameter allowed", getLocator()); + } + }else if(t.kind == RPARAN) + { + nesting--; + if(nesting == 0) + { + return list; + } + } else if(t.kind == COMMA) + { + if(nesting == nest) + { + return list; + }else + { + list += ","; + } - private boolean jj_3R_248() { - if (jj_3R_178()) { - return true; - } - return false; - } + }else if(t.kind == S) + { + list += " "; + } else if(t.kind == LBRACE) + { + throw new CSSParseException("Invalid token,'{' found", getLocator()); + } - private boolean jj_3R_226() { - if (jj_scan_token(MM)) { - return true; + getNextToken(); } - return false; - } + } + + final public Node returnDirective() throws ParseException { + String raw; + raw = skipStatement(); + {if (true) return null;} + throw new Error("Missing return statement in function"); + } + + final public void debuggingDirective() throws ParseException { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case DEBUG_SYM: + debugDirective(); + break; + case WARN_SYM: + warnDirective(); + break; + default: + jj_la1[206] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + + final public void debugDirective() throws ParseException { + jj_consume_token(DEBUG_SYM); + String content = skipStatementUntilSemiColon(); + // TODO should evaluate the content expression, call documentHandler.debugDirective() etc. + System.out.println(content); + label_141: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[207] = jj_gen; + break label_141; + } + jj_consume_token(S); + } + } + + final public void warnDirective() throws ParseException { + jj_consume_token(WARN_SYM); + String content = skipStatementUntilSemiColon(); + // TODO should evaluate the content expression, call documentHandler.warnDirective() etc. + System.err.println(content); + label_142: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[208] = jj_gen; + break label_142; + } + jj_consume_token(S); + } + } + + final public Node forDirective() throws ParseException { + String var; + String from; + String to; + boolean exclusive; + String body; + Token tok; + var = variableName(); + int[] toThrough = {TO, THROUGH}; + from = skipStatementUntil(toThrough); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case TO: + tok = jj_consume_token(TO); + exclusive = true; + break; + case THROUGH: + tok = jj_consume_token(THROUGH); + exclusive = false; + break; + default: + jj_la1[209] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + to = skipStatementUntilLeftBrace(); + label_143: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[210] = jj_gen; + break label_143; + } + jj_consume_token(S); + } + body = skipStatement(); + {if (true) return documentHandler.forDirective(var, from, to, exclusive, body);} + throw new Error("Missing return statement in function"); + } + + final public Node whileDirective() throws ParseException { + String condition; + String body; + condition = skipStatementUntilLeftBrace(); + body = skipStatement(); + {if (true) return documentHandler.whileDirective(condition, body);} + throw new Error("Missing return statement in function"); + } + + final public void extendDirective() throws ParseException { + ArrayList list; + jj_consume_token(EXTEND_SYM); + label_144: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[211] = jj_gen; + break label_144; + } + jj_consume_token(S); + } + list = selectorList(); + label_145: + while (true) { + jj_consume_token(SEMICOLON); + label_146: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[212] = jj_gen; + break label_146; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case SEMICOLON: + ; + break; + default: + jj_la1[213] = jj_gen; + break label_145; + } + } + documentHandler.extendDirective(list); + } + + final public void contentDirective() throws ParseException { + jj_consume_token(CONTENT_SYM); + label_147: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[214] = jj_gen; + break label_147; + } + jj_consume_token(S); + } + label_148: + while (true) { + jj_consume_token(SEMICOLON); + label_149: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[215] = jj_gen; + break label_149; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case SEMICOLON: + ; + break; + default: + jj_la1[216] = jj_gen; + break label_148; + } + } + documentHandler.contentDirective(); + } + + Node importDirective() throws ParseException { + return null; + } + + Node charsetDirective() throws ParseException { + return null; + } + + Node mozDocumentDirective() throws ParseException { + return null; + } + + Node supportsDirective() throws ParseException { + return null; + } + + final public void nestedProperties() throws ParseException { + String name; +LexicalUnit exp; + name = property(); + jj_consume_token(COLON); + label_150: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[217] = jj_gen; + break label_150; + } + jj_consume_token(S); + } + jj_consume_token(LBRACE); + label_151: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[218] = jj_gen; + break label_151; + } + jj_consume_token(S); + } + documentHandler.startNestedProperties(name); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + declaration(); + break; + default: + jj_la1[219] = jj_gen; + ; + } + label_152: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case SEMICOLON: + ; + break; + default: + jj_la1[220] = jj_gen; + break label_152; + } + jj_consume_token(SEMICOLON); + label_153: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[221] = jj_gen; + break label_153; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + declaration(); + break; + default: + jj_la1[222] = jj_gen; + ; + } + } + jj_consume_token(RBRACE); + documentHandler.endNestedProperties(name); + label_154: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[223] = jj_gen; + break label_154; + } + jj_consume_token(S); + } + } - private boolean jj_3R_225() { - if (jj_scan_token(CM)) { - return true; - } - return false; +/** + * @exception ParseException exception during the parse + */ + final public void styleRuleOrDeclarationOrNestedProperties() throws ParseException { + try { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case DEBUG_SYM: + case WARN_SYM: + debuggingDirective(); + break; + default: + jj_la1[224] = jj_gen; + if (jj_2_6(2147483647)) { + styleRule(); + } else if (jj_2_7(3)) { + declarationOrNestedProperties(); + } else { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case IDENT: + case HASH: + styleRule(); + break; + default: + jj_la1[225] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + } + } catch (JumpException e) { + skipAfterExpression(); + // reportWarningSkipText(getLocator(), skipAfterExpression()); + + } catch (ParseException e) { + if (errorHandler != null) { + if (e.currentToken != null) { + LocatorImpl li = new LocatorImpl(this, + e.currentToken.next.beginLine, + e.currentToken.next.beginColumn-1); + reportError(li, e); + } else { + reportError(getLocator(), e); + } + skipAfterExpression(); + /* + LocatorImpl loc = (LocatorImpl) getLocator(); + loc.column--; + reportWarningSkipText(loc, skipAfterExpression()); + */ + } else { + skipAfterExpression(); + } } + } - private boolean jj_3R_200() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_248()) { - jj_scanpos = xsp; - if (jj_3R_249()) { - return true; - } - } - while (true) { - xsp = jj_scanpos; - if (jj_3_2()) { - jj_scanpos = xsp; - break; - } - } +/** + * @exception ParseException exception during the parse + */ + final public void declarationOrNestedProperties() throws ParseException { + boolean important = false; + String name; + LexicalUnitImpl exp; + Token save; + String comment = null; + try { + name = property(); + save = token; + jj_consume_token(COLON); + label_155: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[226] = jj_gen; + break label_155; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case MINUS: + case DOT: + case TO: + case THROUGH: + case FROM: + case STRING: + case IDENT: + case NUMBER: + case URL: + case VARIABLE: + case PERCENTAGE: + case PT: + case MM: + case CM: + case PC: + case IN: + case PX: + case EMS: + case LEM: + case REM: + case EXS: + case DEG: + case RAD: + case GRAD: + case MS: + case SECOND: + case HZ: + case KHZ: + case DIMEN: + case HASH: + case UNICODERANGE: + case FUNCTION: + exp = expr(); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IMPORTANT_SYM: + important = prio(); + break; + default: + jj_la1[227] = jj_gen; + ; + } + Token next = getToken(1); + if(next.kind == SEMICOLON || next.kind == RBRACE){ + while(next.kind == SEMICOLON){ + skipStatement(); + next = getToken(1); + } + //only add special token kept for sprites '/**' + if(token.specialToken!=null && token.specialToken!=null && token.specialToken.image.startsWith("/**")){ + documentHandler.property(name, exp, important, token.specialToken.image); + }else{ + documentHandler.property(name, exp, important, null); + } + } + break; + case LBRACE: + jj_consume_token(LBRACE); + label_156: while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3R_224() { - if (jj_scan_token(PT)) { - return true; - } - return false; - } - - private boolean jj_3R_223() { - if (jj_scan_token(PERCENTAGE)) { - return true; - } - return false; - } - - private boolean jj_3R_206() { - if (jj_3R_251()) { - return true; - } - return false; - } - - private boolean jj_3R_222() { - if (jj_scan_token(NUMBER)) { - return true; - } - return false; - } - - private boolean jj_3R_221() { - if (jj_3R_255()) { - return true; - } - return false; - } - - private boolean jj_3R_258() { - if (jj_scan_token(HASH)) { - return true; - } - return false; - } - - private boolean jj_3_1() { - if (jj_3R_176()) { - return true; - } - return false; - } - - private boolean jj_3R_198() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_221()) { - jj_scanpos = xsp; - } - xsp = jj_scanpos; - if (jj_3R_222()) { - jj_scanpos = xsp; - if (jj_3R_223()) { - jj_scanpos = xsp; - if (jj_3R_224()) { - jj_scanpos = xsp; - if (jj_3R_225()) { - jj_scanpos = xsp; - if (jj_3R_226()) { - jj_scanpos = xsp; - if (jj_3R_227()) { - jj_scanpos = xsp; - if (jj_3R_228()) { - jj_scanpos = xsp; - if (jj_3R_229()) { - jj_scanpos = xsp; - if (jj_3R_230()) { - jj_scanpos = xsp; - if (jj_3R_231()) { - jj_scanpos = xsp; - if (jj_3R_232()) { - jj_scanpos = xsp; - if (jj_3R_233()) { - jj_scanpos = xsp; - if (jj_3R_234()) { - jj_scanpos = xsp; - if (jj_3R_235()) { - jj_scanpos = xsp; - if (jj_3R_236()) { - jj_scanpos = xsp; - if (jj_3R_237()) { - jj_scanpos = xsp; - if (jj_3R_238()) { - jj_scanpos = xsp; - if (jj_3R_239()) { - jj_scanpos = xsp; - if (jj_3R_240()) { - jj_scanpos = xsp; - if (jj_3R_241()) { - jj_scanpos = xsp; - if (jj_3R_242()) { - return true; - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - return false; - } - - private boolean jj_3R_182() { - if (jj_3R_200()) { - return true; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[228] = jj_gen; + break label_156; + } + jj_consume_token(S); + } + documentHandler.startNestedProperties(name); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + declaration(); + break; + default: + jj_la1[229] = jj_gen; + ; } - Token xsp; + label_157: while (true) { - xsp = jj_scanpos; - if (jj_3R_201()) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3R_181() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_198()) { - jj_scanpos = xsp; - if (jj_3R_199()) { - return true; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case SEMICOLON: + ; + break; + default: + jj_la1[230] = jj_gen; + break label_157; + } + jj_consume_token(SEMICOLON); + label_158: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[231] = jj_gen; + break label_158; } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + declaration(); + break; + default: + jj_la1[232] = jj_gen; + ; + } } + jj_consume_token(RBRACE); + label_159: while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3_4() { - if (jj_3R_179()) { - return true; - } - return false; - } - - private boolean jj_3R_259() { - if (jj_scan_token(URL)) { - return true; - } - return false; - } - - private boolean jj_3R_251() { - if (jj_3R_186()) { - return true; - } - return false; - } - - private boolean jj_3R_205() { - if (jj_3R_181()) { - return true; - } - return false; - } - - private boolean jj_3R_184() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_205()) { - jj_scanpos = xsp; - if (jj_3R_206()) { - return true; - } - } - return false; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[233] = jj_gen; + break label_159; + } + jj_consume_token(S); + } + documentHandler.endNestedProperties(name); + break; + default: + jj_la1[234] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } catch (JumpException e) { + skipAfterExpression(); + // reportWarningSkipText(getLocator(), skipAfterExpression()); + + } catch (NumberFormatException e) { + if (errorHandler != null) { + errorHandler.error(new CSSParseException("Invalid number " + + e.getMessage(), + getLocator(), + e)); + } + reportWarningSkipText(getLocator(), skipAfterExpression()); + } catch (ParseException e) { + if (errorHandler != null) { + if (e.currentToken != null) { + LocatorImpl li = new LocatorImpl(this, + e.currentToken.next.beginLine, + e.currentToken.next.beginColumn-1); + reportError(li, e); + } else { + reportError(getLocator(), e); + } + skipAfterExpression(); + /* + LocatorImpl loc = (LocatorImpl) getLocator(); + loc.column--; + reportWarningSkipText(loc, skipAfterExpression()); + */ + } else { + skipAfterExpression(); + } } + } - private boolean jj_3_9() { - if (jj_3R_185()) { - return true; - } - return false; - } +/** + * @exception ParseException exception during the parse + */ + final public void declaration() throws ParseException { + boolean important = false; + String name; + LexicalUnit exp; + Token save; + try { + name = property(); + save = token; + jj_consume_token(COLON); + label_160: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[235] = jj_gen; + break label_160; + } + jj_consume_token(S); + } + exp = expr(); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IMPORTANT_SYM: + important = prio(); + break; + default: + jj_la1[236] = jj_gen; + ; + } + documentHandler.property(name, exp, important); + } catch (JumpException e) { + skipAfterExpression(); + // reportWarningSkipText(getLocator(), skipAfterExpression()); + + } catch (NumberFormatException e) { + if (errorHandler != null) { + errorHandler.error(new CSSParseException("Invalid number " + + e.getMessage(), + getLocator(), + e)); + } + reportWarningSkipText(getLocator(), skipAfterExpression()); + } catch (ParseException e) { + if (errorHandler != null) { + if (e.currentToken != null) { + LocatorImpl li = new LocatorImpl(this, + e.currentToken.next.beginLine, + e.currentToken.next.beginColumn-1); + reportError(li, e); + } else { + reportError(getLocator(), e); + } + skipAfterExpression(); + /* + LocatorImpl loc = (LocatorImpl) getLocator(); + loc.column--; + reportWarningSkipText(loc, skipAfterExpression()); + */ + } else { + skipAfterExpression(); + } + } + } - private boolean jj_3R_262() { - if (jj_scan_token(INTERPOLATION)) { - return true; - } - return false; - } +/** + * @exception ParseException exception during the parse + */ + final public boolean prio() throws ParseException { + jj_consume_token(IMPORTANT_SYM); + label_161: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[237] = jj_gen; + break label_161; + } + jj_consume_token(S); + } + {if (true) return true;} + throw new Error("Missing return statement in function"); + } + + final public boolean guarded() throws ParseException { + jj_consume_token(GUARDED_SYM); + label_162: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[238] = jj_gen; + break label_162; + } + jj_consume_token(S); + } + {if (true) return true;} + throw new Error("Missing return statement in function"); + } - private boolean jj_3_3() { - if (jj_3R_176()) { - return true; - } - return false; - } +/** + * @exception ParseException exception during the parse + */ + final public LexicalUnitImpl operator(LexicalUnitImpl prev) throws ParseException { + Token n; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case COMMA: + /* (comments copied from basic_arithmetics.scss) + *supports: + * 1. standard arithmetic operations (+, -, *, /, %) + * 2. / is treated as css operator, unless one of its operands is variable or there is another binary arithmetic operator + *limits: + * 1. cannot mix arithmetic and css operations, e.g. "margin: 1px + 3px 2px" will fail + * 2. space between add and minus operator and their following operand is mandatory. e.g. "1 + 2" is valid, "1+2" is not + * 3. parenthesis is not supported now. + */ + n = jj_consume_token(COMMA); + label_163: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[239] = jj_gen; + break label_163; + } + jj_consume_token(S); + } + {if (true) return LexicalUnitImpl.createComma(n.beginLine, + n.beginColumn, + prev);} + break; + case DIV: + n = jj_consume_token(DIV); + label_164: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[240] = jj_gen; + break label_164; + } + jj_consume_token(S); + } + {if (true) return LexicalUnitImpl.createSlash(n.beginLine, + n.beginColumn, + prev);} + break; + case ANY: + n = jj_consume_token(ANY); + label_165: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[241] = jj_gen; + break label_165; + } + jj_consume_token(S); + } + {if (true) return LexicalUnitImpl.createMultiply(n.beginLine, + n.beginColumn, + prev);} + break; + case MOD: + n = jj_consume_token(MOD); + label_166: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[242] = jj_gen; + break label_166; + } + jj_consume_token(S); + } + {if (true) return LexicalUnitImpl.createModulo(n.beginLine, + n.beginColumn, + prev);} + break; + case PLUS: + n = jj_consume_token(PLUS); + label_167: + while (true) { + jj_consume_token(S); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[243] = jj_gen; + break label_167; + } + } + {if (true) return LexicalUnitImpl.createAdd(n.beginLine, + n.beginColumn, + prev);} + break; + case MINUS: + n = jj_consume_token(MINUS); + label_168: + while (true) { + jj_consume_token(S); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[244] = jj_gen; + break label_168; + } + } + {if (true) return LexicalUnitImpl.createMinus(n.beginLine, + n.beginColumn, + prev);} + break; + default: + jj_la1[245] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_265() { - if (jj_scan_token(PLUS)) { - return true; - } - return false; - } +/** + * @exception ParseException exception during the parse + */ + final public LexicalUnitImpl expr() throws ParseException { + LexicalUnitImpl first, res; + char op; + first = term(null); + res = first; + label_169: + while (true) { + if (jj_2_8(2)) { + ; + } else { + break label_169; + } + if (jj_2_9(2)) { + res = operator(res); + } else { + ; + } + res = term(res); + } + {if (true) return first;} + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_260() { - if (jj_scan_token(UNICODERANGE)) { - return true; - } - return false; - } +/** + * @exception ParseException exception during the parse + */ + final public char unaryOperator() throws ParseException { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case MINUS: + jj_consume_token(MINUS); + {if (true) return '-';} + break; + case PLUS: + jj_consume_token(PLUS); + {if (true) return '+';} + break; + default: + jj_la1[246] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_255() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_264()) { - jj_scanpos = xsp; - if (jj_3R_265()) { - return true; +/** + * @exception ParseException exception during the parse + */ + final public LexicalUnitImpl term(LexicalUnitImpl prev) throws ParseException { + LexicalUnitImpl result = null; + Token n = null; + char op = ' '; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case MINUS: + case DOT: + case TO: + case THROUGH: + case FROM: + case STRING: + case IDENT: + case NUMBER: + case URL: + case PERCENTAGE: + case PT: + case MM: + case CM: + case PC: + case IN: + case PX: + case EMS: + case LEM: + case REM: + case EXS: + case DEG: + case RAD: + case GRAD: + case MS: + case SECOND: + case HZ: + case KHZ: + case DIMEN: + case HASH: + case UNICODERANGE: + case FUNCTION: + result = nonVariableTerm(prev); + break; + case VARIABLE: + result = variableTerm(prev); + break; + default: + jj_la1[247] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + {if (true) return result;} + throw new Error("Missing return statement in function"); + } + + final public LexicalUnitImpl variableTerm(LexicalUnitImpl prev) throws ParseException { + LexicalUnitImpl result = null; + String varName = ""; + varName = variableName(); + result = LexicalUnitImpl.createVariable(token.beginLine, token.beginColumn, + prev, varName); {if (true) return result;} + throw new Error("Missing return statement in function"); + } + + final public LexicalUnitImpl nonVariableTerm(LexicalUnitImpl prev) throws ParseException { +LexicalUnitImpl result = null; + Token n = null; + char op = ' '; + String varName; + String s = ""; + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case MINUS: + case NUMBER: + case PERCENTAGE: + case PT: + case MM: + case CM: + case PC: + case IN: + case PX: + case EMS: + case LEM: + case REM: + case EXS: + case DEG: + case RAD: + case GRAD: + case MS: + case SECOND: + case HZ: + case KHZ: + case DIMEN: + case FUNCTION: + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case MINUS: + op = unaryOperator(); + break; + default: + jj_la1[248] = jj_gen; + ; + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case NUMBER: + n = jj_consume_token(NUMBER); + result = LexicalUnitImpl.createNumber(n.beginLine, n.beginColumn, + prev, number(op, n, 0)); + break; + case PERCENTAGE: + n = jj_consume_token(PERCENTAGE); + result = LexicalUnitImpl.createPercentage(n.beginLine, n.beginColumn, + prev, number(op, n, 1)); + break; + case PT: + n = jj_consume_token(PT); + result = LexicalUnitImpl.createPT(n.beginLine, n.beginColumn, + prev, number(op, n, 2)); + break; + case CM: + n = jj_consume_token(CM); + result = LexicalUnitImpl.createCM(n.beginLine, n.beginColumn, + prev, number(op, n, 2)); + break; + case MM: + n = jj_consume_token(MM); + result = LexicalUnitImpl.createMM(n.beginLine, n.beginColumn, + prev, number(op, n, 2)); + break; + case PC: + n = jj_consume_token(PC); + result = LexicalUnitImpl.createPC(n.beginLine, n.beginColumn, + prev, number(op, n, 2)); + break; + case IN: + n = jj_consume_token(IN); + result = LexicalUnitImpl.createIN(n.beginLine, n.beginColumn, + prev, number(op, n, 2)); + break; + case PX: + n = jj_consume_token(PX); + result = LexicalUnitImpl.createPX(n.beginLine, n.beginColumn, + prev, number(op, n, 2)); + break; + case EMS: + n = jj_consume_token(EMS); + result = LexicalUnitImpl.createEMS(n.beginLine, n.beginColumn, + prev, number(op, n, 2)); + break; + case LEM: + n = jj_consume_token(LEM); + result = LexicalUnitImpl.createLEM(n.beginLine, n.beginColumn, + prev, number(op, n, 3)); + break; + case REM: + n = jj_consume_token(REM); + result = LexicalUnitImpl.createREM(n.beginLine, n.beginColumn, + prev, number(op, n, 3)); + break; + case EXS: + n = jj_consume_token(EXS); + result = LexicalUnitImpl.createEXS(n.beginLine, n.beginColumn, + prev, number(op, n, 2)); + break; + case DEG: + n = jj_consume_token(DEG); + result = LexicalUnitImpl.createDEG(n.beginLine, n.beginColumn, + prev, number(op, n, 3)); + break; + case RAD: + n = jj_consume_token(RAD); + result = LexicalUnitImpl.createRAD(n.beginLine, n.beginColumn, + prev, number(op, n, 3)); + break; + case GRAD: + n = jj_consume_token(GRAD); + result = LexicalUnitImpl.createGRAD(n.beginLine, n.beginColumn, + prev, number(op, n, 3)); + break; + case SECOND: + n = jj_consume_token(SECOND); + result = LexicalUnitImpl.createS(n.beginLine, n.beginColumn, + prev, number(op, n, 1)); + break; + case MS: + n = jj_consume_token(MS); + result = LexicalUnitImpl.createMS(n.beginLine, n.beginColumn, + prev, number(op, n, 2)); + break; + case HZ: + n = jj_consume_token(HZ); + result = LexicalUnitImpl.createHZ(n.beginLine, n.beginColumn, + prev, number(op, n, 2)); + break; + case KHZ: + n = jj_consume_token(KHZ); + result = LexicalUnitImpl.createKHZ(n.beginLine, n.beginColumn, + prev, number(op, n, 3)); + break; + case DIMEN: + n = jj_consume_token(DIMEN); + s = n.image; + int i = 0; + while (i < s.length() + && (Character.isDigit(s.charAt(i)) || (s.charAt(i) == '.'))) { + i++; } - } - return false; - } - private boolean jj_3R_264() { - if (jj_scan_token(MINUS)) { - return true; + result = LexicalUnitImpl.createDimen(n.beginLine, n.beginColumn, prev, + number(op,n,s.length()-i), + s.substring(i)); + break; + case FUNCTION: + result = function(op, prev); + break; + default: + jj_la1[249] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + break; + case DOT: + case TO: + case THROUGH: + case FROM: + case STRING: + case IDENT: + case URL: + case HASH: + case UNICODERANGE: + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case STRING: + n = jj_consume_token(STRING); + result = + LexicalUnitImpl.createString(n.beginLine, n.beginColumn, prev, + convertStringIndex(n.image, 1, + n.image.length() -1)); + break; + case DOT: + case TO: + case THROUGH: + case FROM: + case IDENT: + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case DOT: + jj_consume_token(DOT); + s+="."; + break; + default: + jj_la1[250] = jj_gen; + ; } - return false; - } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IDENT: + n = jj_consume_token(IDENT); + break; + case TO: + n = jj_consume_token(TO); + break; + case THROUGH: + n = jj_consume_token(THROUGH); + break; + case FROM: + n = jj_consume_token(FROM); + break; + default: + jj_la1[251] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + s += convertIdent(n.image); + if ("inherit".equals(s)) { + result = LexicalUnitImpl.createInherit(n.beginLine, n.beginColumn, + prev); + } else { + result = LexicalUnitImpl.createIdent(n.beginLine, n.beginColumn, + prev, convertIdent(n.image)); + } + + /* / + Auto correction code used in the CSS Validator but must not + be used by a conformant CSS2 parser. + * Common error : + * H1 { + * color : black + * background : white + * } + * + Token t = getToken(1); + Token semicolon = new Token(); + semicolon.kind = SEMICOLON; + semicolon.image = ";"; + if (t.kind == COLON) { + // @@SEEME. (generate a warning?) + // @@SEEME if expression is a single ident, + generate an error ? + rejectToken(semicolon); + + result = prev; + } + / */ + + break; + case HASH: + result = hexcolor(prev); + break; + case URL: + result = url(prev); + break; + case UNICODERANGE: + result = unicode(prev); + break; + default: + jj_la1[252] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + break; + default: + jj_la1[253] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + label_170: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[254] = jj_gen; + break label_170; + } + jj_consume_token(S); + } + {if (true) return result;} + throw new Error("Missing return statement in function"); + } - private boolean jj_3_8() { - Token xsp; - xsp = jj_scanpos; - if (jj_3_9()) { - jj_scanpos = xsp; - } - if (jj_3R_184()) { - return true; - } - return false; +/** + * Handle all CSS2 functions. + * @exception ParseException exception during the parse + */ + final public LexicalUnitImpl function(char operator, LexicalUnitImpl prev) throws ParseException { + Token n; + LexicalUnit params = null; + n = jj_consume_token(FUNCTION); + label_171: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[255] = jj_gen; + break label_171; + } + jj_consume_token(S); } - - private boolean jj_3R_189() { - if (jj_scan_token(SEMICOLON)) { - return true; + String fname = convertIdent(n.image); + if("alpha(".equals(fname)){ + String body = skipStatementUntilSemiColon(); + {if (true) return LexicalUnitImpl.createIdent(n.beginLine, n.beginColumn, + null, "alpha("+body);} + }else if("expression(".equals(fname)){ + String body = skipStatementUntilSemiColon(); + {if (true) return LexicalUnitImpl.createIdent(n.beginLine, n.beginColumn, + null, "expression("+body);} + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case PLUS: + case MINUS: + case DOT: + case TO: + case THROUGH: + case FROM: + case STRING: + case IDENT: + case NUMBER: + case URL: + case VARIABLE: + case PERCENTAGE: + case PT: + case MM: + case CM: + case PC: + case IN: + case PX: + case EMS: + case LEM: + case REM: + case EXS: + case DEG: + case RAD: + case GRAD: + case MS: + case SECOND: + case HZ: + case KHZ: + case DIMEN: + case HASH: + case UNICODERANGE: + case FUNCTION: + params = expr(); + break; + default: + jj_la1[256] = jj_gen; + ; + } + jj_consume_token(RPARAN); + if (operator != ' ') { + {if (true) throw new CSSParseException("invalid operator before a function.", + getLocator());} } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; + String f = convertIdent(n.image); + LexicalUnitImpl l = (LexicalUnitImpl) params; + boolean loop = true; + if ("rgb(".equals(f)) { + // this is a RGB declaration (e.g. rgb(255, 50%, 0) ) + int i = 0; + while (loop && l != null && i < 5) { + switch (i) { + case 0: + case 2: + case 4: + if ((l.getLexicalUnitType() != LexicalUnit.SAC_INTEGER) + && (l.getLexicalUnitType() != LexicalUnit.SAC_PERCENTAGE)) { + loop = false; + } + break; + case 1: + case 3: + if (l.getLexicalUnitType() != LexicalUnit.SAC_OPERATOR_COMMA) { + loop = false; + } + break; + default: + {if (true) throw new ParseException("implementation error");} + } + if (loop) { + l = (LexicalUnitImpl) l.getNextLexicalUnit(); + i ++; + } } - } - return false; - } + if ((i == 5) && loop && (l == null)) { + {if (true) return LexicalUnitImpl.createRGBColor(n.beginLine, + n.beginColumn, + prev, params);} + } else { + if (errorHandler != null) { + String errorText; + Locator loc; + if (i < 5) { + if (params == null) { + loc = new LocatorImpl(this, n.beginLine, + n.beginColumn-1); + errorText = "not enough parameters."; + } else if (l == null) { + loc = new LocatorImpl(this, n.beginLine, + n.beginColumn-1); + errorText = "not enough parameters: " + + params.toString(); + } else { + loc = new LocatorImpl(this, l.getLineNumber(), + l.getColumnNumber()); + errorText = "invalid parameter: " + + l.toString(); + } + } else { + loc = new LocatorImpl(this, l.getLineNumber(), + l.getColumnNumber()); + errorText = "too many parameters: " + + l.toString(); + } + errorHandler.error(new CSSParseException(errorText, loc)); + } - private boolean jj_3R_187() { - if (jj_3R_184()) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3_8()) { - jj_scanpos = xsp; - break; + {if (true) throw new JumpException();} } - } - return false; - } - - private boolean jj_3R_186() { - if (jj_scan_token(VARIABLE)) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; + } else if ("counter".equals(f)) { + int i = 0; + while (loop && l != null && i < 3) { + switch (i) { + case 0: + case 2: + if (l.getLexicalUnitType() != LexicalUnit.SAC_IDENT) { + loop = false; + } + break; + case 1: + if (l.getLexicalUnitType() != LexicalUnit.SAC_OPERATOR_COMMA) { + loop = false; + } + break; + default: + {if (true) throw new ParseException("implementation error");} + } + l = (LexicalUnitImpl) l.getNextLexicalUnit(); + i ++; } - } - return false; - } - - private boolean jj_3R_250() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_261()) { - jj_scanpos = xsp; - if (jj_3R_262()) { - return true; + if (((i == 1) || (i == 3)) && loop && (l == null)) { + {if (true) return LexicalUnitImpl.createCounter(n.beginLine, n.beginColumn, + prev, params);} } - } - return false; - } - private boolean jj_3R_261() { - if (jj_scan_token(IDENT)) { - return true; - } - return false; - } + } else if ("counters(".equals(f)) { - private boolean jj_3R_202() { - Token xsp; - if (jj_3R_250()) { - return true; - } - while (true) { - xsp = jj_scanpos; - if (jj_3R_250()) { - jj_scanpos = xsp; - break; + int i = 0; + while (loop && l != null && i < 5) { + switch (i) { + case 0: + case 4: + if (l.getLexicalUnitType() != LexicalUnit.SAC_IDENT) { + loop = false; + } + break; + case 2: + if (l.getLexicalUnitType() != LexicalUnit.SAC_STRING_VALUE) { + loop = false; + } + break; + case 1: + case 3: + if (l.getLexicalUnitType() != LexicalUnit.SAC_OPERATOR_COMMA) { + loop = false; + } + break; + default: + {if (true) throw new ParseException("implementation error");} + } + l = (LexicalUnitImpl) l.getNextLexicalUnit(); + i ++; } - } - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; + if (((i == 3) || (i == 5)) && loop && (l == null)) { + {if (true) return LexicalUnitImpl.createCounters(n.beginLine, n.beginColumn, + prev, params);} } - } - return false; - } - - private boolean jj_3R_212() { - if (jj_scan_token(MINUS)) { - return true; - } - Token xsp; - if (jj_scan_token(1)) { - return true; - } - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; + } else if ("attr(".equals(f)) { + if ((l != null) + && (l.getNextLexicalUnit() == null) + && (l.getLexicalUnitType() == LexicalUnit.SAC_IDENT)) { + {if (true) return LexicalUnitImpl.createAttr(l.getLineNumber(), + l.getColumnNumber(), + prev, l.getStringValue());} } - } - return false; - } + } else if ("rect(".equals(f)) { + int i = 0; + while (loop && l != null && i < 7) { + switch (i) { + case 0: + case 2: + case 4: + case 6: + switch (l.getLexicalUnitType()) { + case LexicalUnit.SAC_INTEGER: + if (l.getIntegerValue() != 0) { + loop = false; + } + break; + case LexicalUnit.SAC_IDENT: + if (!l.getStringValue().equals("auto")) { + loop = false; + } + break; + case LexicalUnit.SAC_EM: + case LexicalUnit.SAC_EX: + case LexicalUnit.SAC_PIXEL: + case LexicalUnit.SAC_CENTIMETER: + case LexicalUnit.SAC_MILLIMETER: + case LexicalUnit.SAC_INCH: + case LexicalUnit.SAC_POINT: + case LexicalUnit.SAC_PICA: + // nothing + break; + default: + loop = false; + } + break; + case 1: + case 3: + case 5: + if (l.getLexicalUnitType() != LexicalUnit.SAC_OPERATOR_COMMA) { + loop = false; + } + break; + default: + {if (true) throw new ParseException("implementation error");} + } + l = (LexicalUnitImpl) l.getNextLexicalUnit(); + i ++; + } + if ((i == 7) && loop && (l == null)) { + {if (true) return LexicalUnitImpl.createRect(n.beginLine, n.beginColumn, + prev, params);} + } + } + {if (true) return LexicalUnitImpl.createFunction(n.beginLine, n.beginColumn, prev, + f.substring(0, + f.length() -1), + params);} + throw new Error("Missing return statement in function"); + } + + final public LexicalUnitImpl unicode(LexicalUnitImpl prev) throws ParseException { + Token n; + n = jj_consume_token(UNICODERANGE); + LexicalUnitImpl params = null; + String s = n.image.substring(2); + int index = s.indexOf('-'); + if (index == -1) { + params = LexicalUnitImpl.createInteger(n.beginLine, n.beginColumn, + params, Integer.parseInt(s, 16)); + } else { + String s1 = s.substring(0, index); + String s2 = s.substring(index); + + params = LexicalUnitImpl.createInteger(n.beginLine, n.beginColumn, + params, Integer.parseInt(s1, 16)); + params = LexicalUnitImpl.createInteger(n.beginLine, n.beginColumn, + params, Integer.parseInt(s2, 16)); + } + + {if (true) return LexicalUnitImpl.createUnicodeRange(n.beginLine, n.beginColumn, + prev, params);} + throw new Error("Missing return statement in function"); + } + + final public LexicalUnitImpl url(LexicalUnitImpl prev) throws ParseException { + Token n; + n = jj_consume_token(URL); + String urlname = n.image.substring(4, n.image.length()-1).trim(); + {if (true) return LexicalUnitImpl.createURL(n.beginLine, n.beginColumn, prev, urlname);} + throw new Error("Missing return statement in function"); + } - private boolean jj_3R_211() { - if (jj_scan_token(PLUS)) { - return true; - } - Token xsp; - if (jj_scan_token(1)) { - return true; - } - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { - jj_scanpos = xsp; - break; +/** + * @exception ParseException exception during the parse + */ + final public LexicalUnitImpl hexcolor(LexicalUnitImpl prev) throws ParseException { + Token n; + n = jj_consume_token(HASH); + int r; + LexicalUnitImpl first, params = null; + String s = n.image.substring(1); + + if(s.length()!=3 && s.length()!=6) { + first = null; + {if (true) throw new CSSParseException("invalid hexadecimal notation for RGB: " + s, + getLocator());} + } + {if (true) return LexicalUnitImpl.createIdent(n.beginLine, n.beginColumn, + prev, n.image);} + throw new Error("Missing return statement in function"); + } + + float number(char operator, Token n, int lengthUnit) throws ParseException { + String image = n.image; + float f = 0; + + if (lengthUnit != 0) { + image = image.substring(0, image.length() - lengthUnit); + } + f = Float.valueOf(image).floatValue(); + return (operator == '-')? -f: f; + } + + String skipStatementUntilSemiColon() throws ParseException { + int[] semicolon = {SEMICOLON}; + return skipStatementUntil(semicolon); + } + + String skipStatementUntilLeftBrace() throws ParseException { + int[] lBrace = {LBRACE}; + return skipStatementUntil(lBrace); + } + + String skipStatementUntilRightParan() throws ParseException { + int[] rParan = {RPARAN}; + return skipStatementUntil(rParan); + } + + String skipStatementUntil(int[] symbols) throws ParseException { + StringBuffer s = new StringBuffer(); + boolean stop = false; + Token tok; + while(!stop){ + tok = getToken(1); + if(tok.kind == EOF) { + return null; + } + for(int sym : symbols){ + if(tok.kind == sym){ + stop = true; + break; + } + } + if(!stop){ + if (tok.image != null) { + s.append(tok.image); } - } - return false; - } - - /** Generated Token Manager. */ - public ParserTokenManager token_source; - /** Current token. */ - public Token token; - /** Next token. */ - public Token jj_nt; - private int jj_ntk; - private Token jj_scanpos, jj_lastpos; - private int jj_la; - private int jj_gen; - final private int[] jj_la1 = new int[261]; - static private int[] jj_la1_0; - static private int[] jj_la1_1; - static private int[] jj_la1_2; - static private int[] jj_la1_3; - static { - jj_la1_init_0(); - jj_la1_init_1(); - jj_la1_init_2(); - jj_la1_init_3(); - } - - private static void jj_la1_init_0() { - jj_la1_0 = new int[] { 0x0, 0x302, 0x302, 0x0, 0x300, 0x2, 0x2, 0x2, - 0xd4c40000, 0x0, 0x300, 0x2, 0x300, 0x2, 0x0, 0x2, 0x2, 0x2, - 0x0, 0x0, 0x2, 0x2, 0x0, 0x2, 0x0, 0x2, 0x2, 0xd4c40000, - 0xd4c40000, 0x2, 0x2, 0x2, 0xd4fd1500, 0xd4fd1500, 0x2, 0x2, - 0x2, 0x0, 0x0, 0x2, 0x0, 0x200000, 0x2, 0x0, 0x2, 0x2, 0x2, - 0x2, 0x0, 0x200000, 0x2, 0x0, 0x2, 0x391500, 0xc40000, - 0xc40002, 0xc40000, 0x2, 0x2, 0x80120002, 0x80120002, 0x2, 0x0, - 0x0, 0x2, 0x2, 0x2, 0x2, 0xd4c40000, 0xd4c40000, 0x2, 0x100000, - 0x2, 0xd4c40000, 0x2, 0x84000000, 0x84000000, 0x84000000, - 0x84000000, 0x84000000, 0x84000000, 0x84000000, 0x84000000, - 0x84000000, 0x84000000, 0xd4000000, 0x0, 0x0, 0x0, 0x0, - 0x50000000, 0x2, 0x2, 0x3f000, 0x2, 0x0, 0x2, 0x3f000, 0x0, - 0x2, 0x0, 0x2, 0x0, 0x2, 0x200000, 0x0, 0xd4c40000, 0x0, - 0x134e0002, 0x2, 0xd4c40000, 0xd4c40000, 0x2, 0x0, 0x2, - 0x134e0002, 0x0, 0x2, 0xd4c40000, 0xd4c40000, 0x2, 0x134e0002, - 0x2, 0x2, 0x2, 0x0, 0x2, 0xd4c40000, 0x2, 0x2, 0x100000, 0x2, - 0x2, 0x2, 0x2, 0x0, 0x2, 0xd4c40000, 0xd4c40000, 0x2, 0x100000, - 0x2, 0x2, 0x2, 0x100000, 0x0, 0x0, 0x800c0000, 0x2, 0x0, - 0x100000, 0x2, 0x800c0000, 0x2, 0x0, 0x2, 0x0, 0x2, 0x2, - 0x200000, 0x2, 0xd4c40000, 0x2, 0x200400, 0x2, 0x2, 0x0, 0x2, - 0x0, 0x2, 0x2, 0x2, 0x100000, 0x2, 0x2, 0x2, 0x2, 0x2, 0x0, - 0x2, 0x2, 0x2, 0x100000, 0x2, 0x2, 0x2, 0x0, 0x2, 0x2, 0x2, - 0x100000, 0x2, 0x2, 0x0, 0x2, 0x0, 0x2, 0x2, 0x2, 0x100000, - 0x0, 0x2, 0x2, 0x0, 0x2, 0x2, 0x2, 0x200000, 0x2, 0x2, - 0x200000, 0x2, 0x2, 0x0, 0x200000, 0x2, 0x0, 0x2, 0x0, - 0xd4c40000, 0x2, 0x0, 0x2, 0x0, 0x200000, 0x2, 0x0, 0x2, - 0x800c0400, 0x2, 0x0, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, - 0x321c0000, 0xc0000, 0x800c0000, 0xc0000, 0x0, 0x80000000, 0x0, - 0x80000000, 0x800c0000, 0x2, 0x2, 0x800c0000, 0x2, 0xd4c40000, - 0x2, 0x2, 0x2, 0x0, 0x200000, 0x2, 0x0, 0x2, }; - } - - private static void jj_la1_init_1() { - jj_la1_1 = new int[] { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x566000c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, - 0x80, 0x0, 0x0, 0x120000, 0x0, 0x120000, 0x0, 0x0, 0x564000c0, - 0x564000c0, 0x0, 0x0, 0x0, 0x60001c0, 0x60001c0, 0x0, 0x0, 0x0, - 0x0, 0x40, 0x0, 0x80, 0x0, 0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x80, - 0x0, 0x0, 0x80, 0x0, 0x100, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc2, - 0xc2, 0x0, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x564000c0, - 0x564000c0, 0x0, 0x0, 0x0, 0xc0, 0x0, 0x40, 0x40, 0x40, 0x40, - 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0xc0, 0x80, 0x80, 0x80, - 0x80, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x50000000, 0x64000c0, 0x50000000, 0x3f, - 0x0, 0x564000c0, 0x564000c0, 0x0, 0x80000000, 0x0, 0x3f, 0x0, - 0x0, 0x564000c0, 0x564000c0, 0x0, 0x3f, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x564000c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0x0, - 0x564000c0, 0x564000c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, - 0x40, 0x160040, 0x0, 0x40, 0x0, 0x0, 0x160040, 0x0, 0x40, 0x0, - 0x80, 0x0, 0x0, 0x0, 0x0, 0x60000c0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x6000000, 0x0, - 0x0, 0x60000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x80, 0x0, 0x0, 0x80, 0x0, 0x6000000, 0xc0, 0x0, 0x0, 0x0, - 0x80, 0x0, 0x0, 0x80, 0x0, 0x160000, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x160000, 0x0, 0x0, 0x0, - 0x160000, 0x160000, 0x160000, 0x0, 0x0, 0x160000, 0x0, - 0x60000c0, 0x0, 0x0, 0x0, 0x80, 0x0, 0x0, 0x80, 0x0, }; - } - - private static void jj_la1_init_2() { - jj_la1_2 = new int[] { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x100, - 0x1000, 0x0, 0x0, 0x0, 0x0, 0x880, 0x0, 0x0, 0x0, 0x100, 0x100, - 0x0, 0x0, 0x2000, 0x0, 0x2000, 0x0, 0x0, 0x1119, 0x1119, 0x0, - 0x0, 0x0, 0x2b80, 0x2b80, 0x0, 0x0, 0x0, 0x100, 0x0, 0x0, - 0x100, 0x0, 0x0, 0x100, 0x0, 0x0, 0x0, 0x0, 0x100, 0x0, 0x0, - 0x100, 0x0, 0x2a80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x380, 0x380, 0x0, - 0x100, 0x100, 0x0, 0x0, 0x0, 0x0, 0x1119, 0x1119, 0x0, 0x0, - 0x0, 0x100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x100, 0x100, 0x100, 0x100, 0x100, 0x100, 0x0, 0x0, 0x0, - 0x0, 0x180, 0x0, 0x0, 0x0, 0x0, 0x100, 0x0, 0x40, 0x0, 0x0, - 0x0, 0x109, 0x1000, 0x1300, 0x0, 0x1109, 0x1109, 0x0, 0x0, 0x0, - 0x1300, 0x20, 0x0, 0x1109, 0x1109, 0x0, 0x1300, 0x0, 0x0, 0x0, - 0x1100, 0x0, 0x1109, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x100, - 0x0, 0x1109, 0x1109, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000, - 0x1000, 0xfffffb80, 0x0, 0x0, 0x0, 0x0, 0xfffffb80, 0x0, 0x0, - 0x0, 0x1100, 0x0, 0x0, 0x0, 0x0, 0x100, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x1000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x100, - 0x0, 0x0, 0x100, 0x0, 0x0, 0x100, 0x0, 0x0, 0x0, 0x100, 0x0, - 0x0, 0x100, 0x0, 0xfffffb80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0xfffffb80, 0x0, 0xffffe200, 0x0, - 0x100, 0x980, 0xffffeb80, 0x0, 0x0, 0xfffffb80, 0x0, 0x100, - 0x0, 0x0, 0x0, 0x100, 0x0, 0x0, 0x100, 0x0, }; - } - - private static void jj_la1_init_3() { - jj_la1_3 = new int[] { 0x8, 0x80, 0x80, 0x2, 0x80, 0x0, 0x0, 0x0, 0x75, - 0x0, 0x80, 0x0, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc5, 0xc5, 0x0, 0x0, 0x0, - 0xc401bf, 0xc401bf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0xc401be, 0x0, 0x0, 0x0, 0x0, 0x0, 0x400000, 0x400000, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc7, 0xc7, 0x0, 0x0, 0x0, 0x1, - 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x400000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x45, 0x80, - 0x200000, 0x0, 0xe5, 0xe5, 0x0, 0x0, 0x0, 0x200000, 0x0, 0x0, - 0xe5, 0xe5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc5, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x400000, 0x0, 0xd5, 0xd5, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x440001, 0x0, 0x0, 0x0, 0x0, - 0x440001, 0x0, 0x0, 0x0, 0x400000, 0x0, 0x0, 0x0, 0x0, 0x1, - 0x0, 0x0, 0x0, 0x0, 0x380000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, - 0x100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x440001, 0x0, 0x100, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x440001, 0x0, - 0x400000, 0x0, 0x0, 0x40001, 0x440001, 0x0, 0x0, 0x440001, 0x0, - 0x37, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, }; - } - - final private JJCalls[] jj_2_rtns = new JJCalls[9]; - private boolean jj_rescan = false; - private int jj_gc = 0; - - /** Constructor with user supplied CharStream. */ - public Parser(CharStream stream) { - token_source = new ParserTokenManager(stream); - token = new Token(); - jj_ntk = -1; - jj_gen = 0; - for (int i = 0; i < 261; i++) { - jj_la1[i] = -1; - } - for (int i = 0; i < jj_2_rtns.length; i++) { - jj_2_rtns[i] = new JJCalls(); + getNextToken(); } } + return s.toString().trim(); + } - /** Reinitialise. */ - public void ReInit(CharStream stream) { - token_source.ReInit(stream); - token = new Token(); - jj_ntk = -1; - jj_gen = 0; - for (int i = 0; i < 261; i++) { - jj_la1[i] = -1; - } - for (int i = 0; i < jj_2_rtns.length; i++) { - jj_2_rtns[i] = new JJCalls(); - } + String skipStatement() throws ParseException { + StringBuffer s = new StringBuffer(); + Token tok = getToken(0); + if (tok.image != null) { + s.append(tok.image); } - - /** Constructor with generated Token Manager. */ - public Parser(ParserTokenManager tm) { - token_source = tm; - token = new Token(); - jj_ntk = -1; - jj_gen = 0; - for (int i = 0; i < 261; i++) { - jj_la1[i] = -1; + while (true) { + tok = getToken(1); + if (tok.kind == EOF) { + return null; } - for (int i = 0; i < jj_2_rtns.length; i++) { - jj_2_rtns[i] = new JJCalls(); + s.append(tok.image); + if (tok.kind == LBRACE) { + getNextToken(); + s.append(skip_to_matching_brace()); + getNextToken(); + tok = getToken(1); + break; + } else if (tok.kind == RBRACE) { + getNextToken(); + tok = getToken(1); + break; + } else if (tok.kind == SEMICOLON) { + getNextToken(); + tok = getToken(1); + break; } + getNextToken(); } - /** Reinitialise. */ - public void ReInit(ParserTokenManager tm) { - token_source = tm; - token = new Token(); - jj_ntk = -1; - jj_gen = 0; - for (int i = 0; i < 261; i++) { - jj_la1[i] = -1; - } - for (int i = 0; i < jj_2_rtns.length; i++) { - jj_2_rtns[i] = new JJCalls(); + // skip white space + while (true) { + if (tok.kind != S) { + break; } + tok = getNextToken(); + tok = getToken(1); } - private Token jj_consume_token(int kind) throws ParseException { - Token oldToken; - if ((oldToken = token).next != null) { - token = token.next; - } else { - token = token.next = token_source.getNextToken(); - } - jj_ntk = -1; - if (token.kind == kind) { - jj_gen++; - if (++jj_gc > 100) { - jj_gc = 0; - for (int i = 0; i < jj_2_rtns.length; i++) { - JJCalls c = jj_2_rtns[i]; - while (c != null) { - if (c.gen < jj_gen) { - c.first = null; + return s.toString().trim(); + } + + String skip_to_matching_brace() throws ParseException { + StringBuffer s = new StringBuffer(); + Token tok; + int nesting = 1; + while (true) { + tok = getToken(1); + if (tok.kind == EOF) { + break; + } + s.append(tok.image); + if (tok.kind == LBRACE) { + nesting++; + } else if (tok.kind == RBRACE) { + nesting--; + if (nesting == 0) { + break; + } + } + getNextToken(); + } + return s.toString(); + } + + String convertStringIndex(String s, int start, int len) throws ParseException { + StringBuffer buf = new StringBuffer(len); + int index = start; + + while (index < len) { + char c = s.charAt(index); + if (c == '\u005c\u005c') { + if (++index < len) { + c = s.charAt(index); + switch (c) { + case '0': case '1': case '2': case '3': case '4': + case '5': case '6': case '7': case '8': case '9': + case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': + case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': + buf.append('\u005c\u005c'); + while (index < len) { + buf.append(s.charAt(index++)); + } + break; + case '\u005cn': + case '\u005cf': + break; + case '\u005cr': + if (index + 1 < len) { + if (s.charAt(index + 1) == '\u005cn') { + index ++; } - c = c.next; } + break; + default: + buf.append(c); } - } - return token; - } - token = oldToken; - jj_kind = kind; - throw generateParseException(); - } - - static private final class LookaheadSuccess extends java.lang.Error { - } - - final private LookaheadSuccess jj_ls = new LookaheadSuccess(); - - private boolean jj_scan_token(int kind) { - if (jj_scanpos == jj_lastpos) { - jj_la--; - if (jj_scanpos.next == null) { - jj_lastpos = jj_scanpos = jj_scanpos.next = token_source - .getNextToken(); } else { - jj_lastpos = jj_scanpos = jj_scanpos.next; + throw new CSSParseException("invalid string " + s, getLocator()); } } else { - jj_scanpos = jj_scanpos.next; - } - if (jj_rescan) { - int i = 0; - Token tok = token; - while (tok != null && tok != jj_scanpos) { - i++; - tok = tok.next; - } - if (tok != null) { - jj_add_error_token(kind, i); - } - } - if (jj_scanpos.kind != kind) { - return true; - } - if (jj_la == 0 && jj_scanpos == jj_lastpos) { - throw jj_ls; + buf.append(c); } - return false; + index++; } - /** Get the next Token. */ - final public Token getNextToken() { - if (token.next != null) { - token = token.next; - } else { - token = token.next = token_source.getNextToken(); - } - jj_ntk = -1; - jj_gen++; - return token; - } + return buf.toString(); + } - /** Get the specific Token. */ - final public Token getToken(int index) { - Token t = token; - for (int i = 0; i < index; i++) { - if (t.next != null) { - t = t.next; - } else { - t = t.next = token_source.getNextToken(); - } - } - return t; - } + String convertIdent(String s) throws ParseException { + return convertStringIndex(s, 0, s.length()); + } - private int jj_ntk() { - if ((jj_nt = token.next) == null) { - return (jj_ntk = (token.next = token_source.getNextToken()).kind); - } else { - return (jj_ntk = jj_nt.kind); + String convertString(String s) throws ParseException { + return convertStringIndex(s, 0, s.length()); + } + + void comments() throws ParseException { + /*keeps only the multiple line comments, single line comments are skipped*/ + if (token.specialToken != null && token.specialToken.image!=null && token.specialToken.image.startsWith("/*")){ + Token tmp_t = token.specialToken; + while (tmp_t.specialToken != null) tmp_t = tmp_t.specialToken; + while (tmp_t != null) { + documentHandler.comment(tmp_t.image); + tmp_t = tmp_t.next; } } + } - private java.util.List jj_expentries = new java.util.ArrayList(); - private int[] jj_expentry; - private int jj_kind = -1; - private int[] jj_lasttokens = new int[100]; - private int jj_endpos; + void rejectToken(Token t) throws ParseException { + Token fakeToken = new Token(); + t.next = token; + fakeToken.next = t; + token = fakeToken; + } - private void jj_add_error_token(int kind, int pos) { - if (pos >= 100) { - return; - } - if (pos == jj_endpos + 1) { - jj_lasttokens[jj_endpos++] = kind; - } else if (jj_endpos != 0) { - jj_expentry = new int[jj_endpos]; - for (int i = 0; i < jj_endpos; i++) { - jj_expentry[i] = jj_lasttokens[i]; - } - jj_entries_loop: for (java.util.Iterator it = jj_expentries - .iterator(); it.hasNext();) { - int[] oldentry = (int[]) (it.next()); - if (oldentry.length == jj_expentry.length) { - for (int i = 0; i < jj_expentry.length; i++) { - if (oldentry[i] != jj_expentry[i]) { - continue jj_entries_loop; - } - } - jj_expentries.add(jj_expentry); - break jj_entries_loop; - } - } - if (pos != 0) { - jj_lasttokens[(jj_endpos = pos) - 1] = kind; - } - } + String skipAfterExpression() throws ParseException { + Token t = getToken(1); + StringBuffer s = new StringBuffer(); + s.append(getToken(0).image); + + while ((t.kind != RBRACE) && (t.kind != SEMICOLON) && (t.kind != EOF)) { + s.append(t.image); + getNextToken(); + t = getToken(1); } - /** Generate ParseException. */ - public ParseException generateParseException() { - jj_expentries.clear(); - boolean[] la1tokens = new boolean[120]; - if (jj_kind >= 0) { - la1tokens[jj_kind] = true; - jj_kind = -1; - } - for (int i = 0; i < 261; i++) { - if (jj_la1[i] == jj_gen) { - for (int j = 0; j < 32; j++) { - if ((jj_la1_0[i] & (1 << j)) != 0) { - la1tokens[j] = true; - } - if ((jj_la1_1[i] & (1 << j)) != 0) { - la1tokens[32 + j] = true; - } - if ((jj_la1_2[i] & (1 << j)) != 0) { - la1tokens[64 + j] = true; + return s.toString(); + } + +/** + * The following functions are useful for a DOM CSS implementation only and are + * not part of the general CSS2 parser. + */ +// TODO required by original parser but not used by Vaadin? + final public void _parseRule() throws ParseException { + String ret = null; + label_172: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[257] = jj_gen; + break label_172; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case IMPORT_SYM: + importDeclaration(); + break; + case DEBUG_SYM: + case WARN_SYM: + debuggingDirective(); + break; + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case IDENT: + case HASH: + styleRule(); + break; + case MEDIA_SYM: + media(); + break; + case PAGE_SYM: + page(); + break; + case FONT_FACE_SYM: + fontFace(); + break; + default: + jj_la1[258] = jj_gen; + ret = skipStatement(); + if ((ret == null) || (ret.length() == 0)) { + {if (true) return;} } - if ((jj_la1_3[i] & (1 << j)) != 0) { - la1tokens[96 + j] = true; + if (ret.charAt(0) == '@') { + documentHandler.unrecognizedRule(ret); + } else { + {if (true) throw new CSSParseException("unrecognize rule: " + ret, + getLocator());} } - } - } - } - for (int i = 0; i < 120; i++) { - if (la1tokens[i]) { - jj_expentry = new int[1]; - jj_expentry[0] = i; - jj_expentries.add(jj_expentry); - } - } - jj_endpos = 0; - jj_rescan_token(); - jj_add_error_token(0, 0); - int[][] exptokseq = new int[jj_expentries.size()][]; - for (int i = 0; i < jj_expentries.size(); i++) { - exptokseq[i] = jj_expentries.get(i); - } - return new ParseException(token, exptokseq, tokenImage); } + } + + final public void _parseImportRule() throws ParseException { + label_173: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[259] = jj_gen; + break label_173; + } + jj_consume_token(S); + } + importDeclaration(); + } + + final public void _parseMediaRule() throws ParseException { + label_174: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[260] = jj_gen; + break label_174; + } + jj_consume_token(S); + } + media(); + } + + final public void _parseDeclarationBlock() throws ParseException { + label_175: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[261] = jj_gen; + break label_175; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + declaration(); + break; + default: + jj_la1[262] = jj_gen; + ; + } + label_176: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case SEMICOLON: + ; + break; + default: + jj_la1[263] = jj_gen; + break label_176; + } + jj_consume_token(SEMICOLON); + label_177: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[264] = jj_gen; + break label_177; + } + jj_consume_token(S); + } + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case INTERPOLATION: + case IDENT: + declaration(); + break; + default: + jj_la1[265] = jj_gen; + ; + } + } + } + + final public ArrayList _parseSelectors() throws ParseException { + ArrayList p = null; + try { + label_178: + while (true) { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case S: + ; + break; + default: + jj_la1[266] = jj_gen; + break label_178; + } + jj_consume_token(S); + } + p = selectorList(); + {if (true) return p;} + } catch (ThrowedParseException e) { + {if (true) throw (ParseException) e.e.fillInStackTrace();} + } + throw new Error("Missing return statement in function"); + } + + private boolean jj_2_1(int xla) { + jj_la = xla; jj_lastpos = jj_scanpos = token; + try { return !jj_3_1(); } + catch(LookaheadSuccess ls) { return true; } + finally { jj_save(0, xla); } + } + + private boolean jj_2_2(int xla) { + jj_la = xla; jj_lastpos = jj_scanpos = token; + try { return !jj_3_2(); } + catch(LookaheadSuccess ls) { return true; } + finally { jj_save(1, xla); } + } + + private boolean jj_2_3(int xla) { + jj_la = xla; jj_lastpos = jj_scanpos = token; + try { return !jj_3_3(); } + catch(LookaheadSuccess ls) { return true; } + finally { jj_save(2, xla); } + } + + private boolean jj_2_4(int xla) { + jj_la = xla; jj_lastpos = jj_scanpos = token; + try { return !jj_3_4(); } + catch(LookaheadSuccess ls) { return true; } + finally { jj_save(3, xla); } + } + + private boolean jj_2_5(int xla) { + jj_la = xla; jj_lastpos = jj_scanpos = token; + try { return !jj_3_5(); } + catch(LookaheadSuccess ls) { return true; } + finally { jj_save(4, xla); } + } + + private boolean jj_2_6(int xla) { + jj_la = xla; jj_lastpos = jj_scanpos = token; + try { return !jj_3_6(); } + catch(LookaheadSuccess ls) { return true; } + finally { jj_save(5, xla); } + } + + private boolean jj_2_7(int xla) { + jj_la = xla; jj_lastpos = jj_scanpos = token; + try { return !jj_3_7(); } + catch(LookaheadSuccess ls) { return true; } + finally { jj_save(6, xla); } + } + + private boolean jj_2_8(int xla) { + jj_la = xla; jj_lastpos = jj_scanpos = token; + try { return !jj_3_8(); } + catch(LookaheadSuccess ls) { return true; } + finally { jj_save(7, xla); } + } + + private boolean jj_2_9(int xla) { + jj_la = xla; jj_lastpos = jj_scanpos = token; + try { return !jj_3_9(); } + catch(LookaheadSuccess ls) { return true; } + finally { jj_save(8, xla); } + } + + private boolean jj_3R_213() { + if (jj_scan_token(MOD)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_212() { + if (jj_scan_token(ANY)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_211() { + if (jj_scan_token(DIV)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_210() { + if (jj_scan_token(COMMA)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_188() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_210()) { + jj_scanpos = xsp; + if (jj_3R_211()) { + jj_scanpos = xsp; + if (jj_3R_212()) { + jj_scanpos = xsp; + if (jj_3R_213()) { + jj_scanpos = xsp; + if (jj_3R_214()) { + jj_scanpos = xsp; + if (jj_3R_215()) return true; + } + } + } + } + } + return false; + } + + private boolean jj_3R_218() { + if (jj_3R_217()) return true; + return false; + } + + private boolean jj_3R_216() { + if (jj_scan_token(GUARDED_SYM)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_217() { + Token xsp; + xsp = jj_scanpos; + if (jj_scan_token(18)) { + jj_scanpos = xsp; + if (jj_scan_token(22)) { + jj_scanpos = xsp; + if (jj_scan_token(23)) return true; + } + } + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_179() { + if (jj_3R_189()) return true; + if (jj_scan_token(COLON)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + if (jj_3R_190()) return true; + xsp = jj_scanpos; + if (jj_3R_191()) jj_scanpos = xsp; + if (jj_3R_192()) return true; + while (true) { + xsp = jj_scanpos; + if (jj_3R_192()) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_194() { + if (jj_scan_token(S)) return true; + Token xsp; + xsp = jj_scanpos; + if (jj_3R_218()) jj_scanpos = xsp; + return false; + } + + private boolean jj_3R_193() { + if (jj_3R_217()) return true; + return false; + } + + private boolean jj_3R_180() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_193()) { + jj_scanpos = xsp; + if (jj_3R_194()) return true; + } + return false; + } + + private boolean jj_3R_200() { + if (jj_scan_token(VARIABLE)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + if (jj_scan_token(COLON)) return true; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_182() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_200()) jj_scanpos = xsp; + if (jj_scan_token(CONTAINS)) return true; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + if (true) { jj_la = 0; jj_scanpos = jj_lastpos; return false;} + return false; + } + + private boolean jj_3R_220() { + if (jj_scan_token(HASH)) return true; + return false; + } + + private boolean jj_3R_290() { + if (jj_scan_token(IDENT)) return true; + return false; + } + + private boolean jj_3R_291() { + if (jj_scan_token(FUNCTION)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + if (true) { jj_la = 0; jj_scanpos = jj_lastpos; return false;} + return false; + } + + private boolean jj_3R_289() { + if (jj_scan_token(COLON)) return true; + return false; + } + + private boolean jj_3R_222() { + if (jj_scan_token(COLON)) return true; + Token xsp; + xsp = jj_scanpos; + if (jj_3R_289()) jj_scanpos = xsp; + xsp = jj_scanpos; + if (jj_3R_290()) { + jj_scanpos = xsp; + if (jj_3R_291()) return true; + } + return false; + } + + private boolean jj_3_7() { + if (jj_3R_186()) return true; + return false; + } + + private boolean jj_3R_207() { + if (jj_scan_token(LBRACE)) return true; + return false; + } + + private boolean jj_3R_310() { + if (jj_scan_token(STRING)) return true; + return false; + } + + private boolean jj_3R_308() { + if (jj_scan_token(STARMATCH)) return true; + return false; + } + + private boolean jj_3R_309() { + if (jj_scan_token(IDENT)) return true; + return false; + } + + private boolean jj_3R_307() { + if (jj_scan_token(DOLLARMATCH)) return true; + return false; + } + + private boolean jj_3R_306() { + if (jj_scan_token(CARETMATCH)) return true; + return false; + } + + private boolean jj_3R_305() { + if (jj_scan_token(DASHMATCH)) return true; + return false; + } + + private boolean jj_3R_304() { + if (jj_scan_token(INCLUDES)) return true; + return false; + } + + private boolean jj_3R_271() { + if (jj_scan_token(INTERPOLATION)) return true; + return false; + } + + private boolean jj_3R_303() { + if (jj_scan_token(EQ)) return true; + return false; + } + + private boolean jj_3R_206() { + if (jj_3R_190()) return true; + return false; + } + + private boolean jj_3R_296() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_303()) { + jj_scanpos = xsp; + if (jj_3R_304()) { + jj_scanpos = xsp; + if (jj_3R_305()) { + jj_scanpos = xsp; + if (jj_3R_306()) { + jj_scanpos = xsp; + if (jj_3R_307()) { + jj_scanpos = xsp; + if (jj_3R_308()) return true; + } + } + } + } + } + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + xsp = jj_scanpos; + if (jj_3R_309()) { + jj_scanpos = xsp; + if (jj_3R_310()) return true; + } + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3_6() { + if (jj_3R_185()) return true; + if (jj_scan_token(LBRACE)) return true; + return false; + } + + private boolean jj_3R_223() { + if (jj_scan_token(LBRACKET)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + if (jj_scan_token(IDENT)) return true; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + xsp = jj_scanpos; + if (jj_3R_296()) jj_scanpos = xsp; + if (jj_scan_token(RBRACKET)) return true; + return false; + } + + private boolean jj_3R_186() { + if (jj_3R_205()) return true; + if (jj_scan_token(COLON)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + xsp = jj_scanpos; + if (jj_3R_206()) { + jj_scanpos = xsp; + if (jj_3R_207()) return true; + } + return false; + } + + private boolean jj_3R_302() { + if (jj_scan_token(INTERPOLATION)) return true; + return false; + } + + private boolean jj_3R_269() { + if (jj_3R_190()) return true; + return false; + } + + private boolean jj_3R_257() { + if (jj_scan_token(PARENT)) return true; + return false; + } + + private boolean jj_3R_256() { + if (jj_scan_token(ANY)) return true; + return false; + } + + private boolean jj_3R_266() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_270()) { + jj_scanpos = xsp; + if (jj_3R_271()) return true; + } + return false; + } + + private boolean jj_3R_270() { + if (jj_scan_token(IDENT)) return true; + return false; + } + + private boolean jj_3R_219() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_255()) { + jj_scanpos = xsp; + if (jj_3R_256()) { + jj_scanpos = xsp; + if (jj_3R_257()) return true; + } + } + return false; + } + + private boolean jj_3R_255() { + Token xsp; + if (jj_3R_266()) return true; + while (true) { + xsp = jj_scanpos; + if (jj_3R_266()) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_259() { + if (jj_scan_token(FUNCTION)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + xsp = jj_scanpos; + if (jj_3R_269()) jj_scanpos = xsp; + if (jj_scan_token(RPARAN)) return true; + return false; + } + + private boolean jj_3R_183() { + if (jj_scan_token(COMMA)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_250() { + if (jj_3R_263()) return true; + return false; + } + + private boolean jj_3R_301() { + if (jj_scan_token(IDENT)) return true; + return false; + } + + private boolean jj_3R_284() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_301()) { + jj_scanpos = xsp; + if (jj_3R_302()) return true; + } + return false; + } + + private boolean jj_3R_249() { + if (jj_3R_262()) return true; + return false; + } + + private boolean jj_3R_248() { + if (jj_3R_261()) return true; + return false; + } + + private boolean jj_3R_300() { + if (jj_3R_222()) return true; + return false; + } + + private boolean jj_3_5() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_183()) jj_scanpos = xsp; + if (jj_3R_184()) return true; + return false; + } + + private boolean jj_3R_221() { + if (jj_scan_token(DOT)) return true; + Token xsp; + if (jj_3R_284()) return true; + while (true) { + xsp = jj_scanpos; + if (jj_3R_284()) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_298() { + if (jj_3R_221()) return true; + return false; + } + + private boolean jj_3R_293() { + if (jj_3R_221()) return true; + return false; + } + + private boolean jj_3R_295() { + if (jj_3R_222()) return true; + return false; + } + + private boolean jj_3R_283() { + if (jj_3R_222()) return true; + return false; + } + + private boolean jj_3R_286() { + if (jj_3R_221()) return true; + return false; + } + + private boolean jj_3R_288() { + if (jj_3R_222()) return true; + return false; + } + + private boolean jj_3R_299() { + if (jj_3R_223()) return true; + return false; + } + + private boolean jj_3R_276() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_297()) { + jj_scanpos = xsp; + if (jj_3R_298()) { + jj_scanpos = xsp; + if (jj_3R_299()) { + jj_scanpos = xsp; + if (jj_3R_300()) return true; + } + } + } + return false; + } + + private boolean jj_3R_297() { + if (jj_3R_220()) return true; + return false; + } + + private boolean jj_3R_275() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_292()) { + jj_scanpos = xsp; + if (jj_3R_293()) { + jj_scanpos = xsp; + if (jj_3R_294()) { + jj_scanpos = xsp; + if (jj_3R_295()) return true; + } + } + } + return false; + } + + private boolean jj_3R_292() { + if (jj_3R_220()) return true; + return false; + } + + private boolean jj_3R_280() { + if (jj_3R_222()) return true; + return false; + } + + private boolean jj_3R_274() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_285()) { + jj_scanpos = xsp; + if (jj_3R_286()) { + jj_scanpos = xsp; + if (jj_3R_287()) { + jj_scanpos = xsp; + if (jj_3R_288()) return true; + } + } + } + return false; + } + + private boolean jj_3R_285() { + if (jj_3R_220()) return true; + return false; + } + + private boolean jj_3R_294() { + if (jj_3R_223()) return true; + return false; + } + + private boolean jj_3R_282() { + if (jj_3R_223()) return true; + return false; + } + + private boolean jj_3R_287() { + if (jj_3R_223()) return true; + return false; + } + + private boolean jj_3R_273() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_281()) { + jj_scanpos = xsp; + if (jj_3R_282()) { + jj_scanpos = xsp; + if (jj_3R_283()) return true; + } + } + return false; + } + + private boolean jj_3R_278() { + if (jj_3R_221()) return true; + return false; + } + + private boolean jj_3R_281() { + if (jj_3R_221()) return true; + return false; + } + + private boolean jj_3R_260() { + if (jj_scan_token(DOT)) return true; + return false; + } + + private boolean jj_3R_247() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_260()) jj_scanpos = xsp; + xsp = jj_scanpos; + if (jj_scan_token(72)) { + jj_scanpos = xsp; + if (jj_scan_token(49)) { + jj_scanpos = xsp; + if (jj_scan_token(50)) { + jj_scanpos = xsp; + if (jj_scan_token(52)) return true; + } + } + } + return false; + } + + private boolean jj_3R_246() { + if (jj_scan_token(STRING)) return true; + return false; + } + + private boolean jj_3R_245() { + if (jj_3R_259()) return true; + return false; + } + + private boolean jj_3R_199() { + if (jj_3R_223()) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_3R_276()) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_202() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_246()) { + jj_scanpos = xsp; + if (jj_3R_247()) { + jj_scanpos = xsp; + if (jj_3R_248()) { + jj_scanpos = xsp; + if (jj_3R_249()) { + jj_scanpos = xsp; + if (jj_3R_250()) return true; + } + } + } + } + return false; + } + + private boolean jj_3R_198() { + if (jj_3R_222()) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_3R_275()) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_279() { + if (jj_3R_223()) return true; + return false; + } + + private boolean jj_3R_197() { + if (jj_3R_221()) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_3R_274()) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_196() { + if (jj_3R_220()) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_3R_273()) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_272() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_277()) { + jj_scanpos = xsp; + if (jj_3R_278()) { + jj_scanpos = xsp; + if (jj_3R_279()) { + jj_scanpos = xsp; + if (jj_3R_280()) return true; + } + } + } + return false; + } + + private boolean jj_3R_277() { + if (jj_3R_220()) return true; + return false; + } + + private boolean jj_3R_195() { + if (jj_3R_219()) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_3R_272()) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_244() { + if (jj_scan_token(DIMEN)) return true; + return false; + } + + private boolean jj_3R_181() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_195()) { + jj_scanpos = xsp; + if (jj_3R_196()) { + jj_scanpos = xsp; + if (jj_3R_197()) { + jj_scanpos = xsp; + if (jj_3R_198()) { + jj_scanpos = xsp; + if (jj_3R_199()) return true; + } + } + } + } + return false; + } + + private boolean jj_3R_243() { + if (jj_scan_token(KHZ)) return true; + return false; + } + + private boolean jj_3R_252() { + if (jj_3R_217()) return true; + if (jj_3R_181()) return true; + return false; + } + + private boolean jj_3R_242() { + if (jj_scan_token(HZ)) return true; + return false; + } + + private boolean jj_3R_241() { + if (jj_scan_token(MS)) return true; + return false; + } + + private boolean jj_3R_240() { + if (jj_scan_token(SECOND)) return true; + return false; + } + + private boolean jj_3R_239() { + if (jj_scan_token(GRAD)) return true; + return false; + } + + private boolean jj_3R_238() { + if (jj_scan_token(RAD)) return true; + return false; + } + + private boolean jj_3R_237() { + if (jj_scan_token(DEG)) return true; + return false; + } + + private boolean jj_3R_236() { + if (jj_scan_token(EXS)) return true; + return false; + } + + private boolean jj_3R_235() { + if (jj_scan_token(REM)) return true; + return false; + } + + private boolean jj_3R_234() { + if (jj_scan_token(LEM)) return true; + return false; + } + + private boolean jj_3R_233() { + if (jj_scan_token(EMS)) return true; + return false; + } + + private boolean jj_3_2() { + if (jj_3R_180()) return true; + if (jj_3R_181()) return true; + return false; + } + + private boolean jj_3R_232() { + if (jj_scan_token(PX)) return true; + return false; + } + + private boolean jj_3R_231() { + if (jj_scan_token(IN)) return true; + return false; + } + + private boolean jj_3R_204() { + if (jj_scan_token(COMMA)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + if (jj_3R_203()) return true; + return false; + } + + private boolean jj_3R_251() { + if (jj_3R_181()) return true; + return false; + } + + private boolean jj_3R_230() { + if (jj_scan_token(PC)) return true; + return false; + } + + private boolean jj_3R_229() { + if (jj_scan_token(MM)) return true; + return false; + } + + private boolean jj_3R_203() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_251()) { + jj_scanpos = xsp; + if (jj_3R_252()) return true; + } + while (true) { + xsp = jj_scanpos; + if (jj_3_2()) { jj_scanpos = xsp; break; } + } + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_228() { + if (jj_scan_token(CM)) return true; + return false; + } + + private boolean jj_3R_227() { + if (jj_scan_token(PT)) return true; + return false; + } + + private boolean jj_3R_226() { + if (jj_scan_token(PERCENTAGE)) return true; + return false; + } + + private boolean jj_3R_209() { + if (jj_3R_254()) return true; + return false; + } + + private boolean jj_3R_225() { + if (jj_scan_token(NUMBER)) return true; + return false; + } + + private boolean jj_3R_224() { + if (jj_3R_258()) return true; + return false; + } + + private boolean jj_3R_201() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_224()) jj_scanpos = xsp; + xsp = jj_scanpos; + if (jj_3R_225()) { + jj_scanpos = xsp; + if (jj_3R_226()) { + jj_scanpos = xsp; + if (jj_3R_227()) { + jj_scanpos = xsp; + if (jj_3R_228()) { + jj_scanpos = xsp; + if (jj_3R_229()) { + jj_scanpos = xsp; + if (jj_3R_230()) { + jj_scanpos = xsp; + if (jj_3R_231()) { + jj_scanpos = xsp; + if (jj_3R_232()) { + jj_scanpos = xsp; + if (jj_3R_233()) { + jj_scanpos = xsp; + if (jj_3R_234()) { + jj_scanpos = xsp; + if (jj_3R_235()) { + jj_scanpos = xsp; + if (jj_3R_236()) { + jj_scanpos = xsp; + if (jj_3R_237()) { + jj_scanpos = xsp; + if (jj_3R_238()) { + jj_scanpos = xsp; + if (jj_3R_239()) { + jj_scanpos = xsp; + if (jj_3R_240()) { + jj_scanpos = xsp; + if (jj_3R_241()) { + jj_scanpos = xsp; + if (jj_3R_242()) { + jj_scanpos = xsp; + if (jj_3R_243()) { + jj_scanpos = xsp; + if (jj_3R_244()) { + jj_scanpos = xsp; + if (jj_3R_245()) return true; + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + return false; + } + + private boolean jj_3_1() { + if (jj_3R_179()) return true; + return false; + } + + private boolean jj_3R_185() { + if (jj_3R_203()) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_3R_204()) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_184() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_201()) { + jj_scanpos = xsp; + if (jj_3R_202()) return true; + } + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_261() { + if (jj_scan_token(HASH)) return true; + return false; + } + + private boolean jj_3_4() { + if (jj_3R_182()) return true; + return false; + } + + private boolean jj_3R_254() { + if (jj_3R_189()) return true; + return false; + } + + private boolean jj_3R_262() { + if (jj_scan_token(URL)) return true; + return false; + } - /** Enable tracing. */ - final public void enable_tracing() { - } + private boolean jj_3R_208() { + if (jj_3R_184()) return true; + return false; + } - /** Disable tracing. */ - final public void disable_tracing() { + private boolean jj_3R_187() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_208()) { + jj_scanpos = xsp; + if (jj_3R_209()) return true; } + return false; + } - private void jj_rescan_token() { - jj_rescan = true; - for (int i = 0; i < 9; i++) { - try { - JJCalls p = jj_2_rtns[i]; - do { - if (p.gen > jj_gen) { - jj_la = p.arg; - jj_lastpos = jj_scanpos = p.first; - switch (i) { - case 0: - jj_3_1(); - break; - case 1: - jj_3_2(); - break; - case 2: - jj_3_3(); - break; - case 3: - jj_3_4(); - break; - case 4: - jj_3_5(); - break; - case 5: - jj_3_6(); - break; - case 6: - jj_3_7(); - break; - case 7: - jj_3_8(); - break; - case 8: - jj_3_9(); - break; - } - } - p = p.next; - } while (p != null); - } catch (LookaheadSuccess ls) { - } - } - jj_rescan = false; - } + private boolean jj_3_9() { + if (jj_3R_188()) return true; + return false; + } - private void jj_save(int index, int xla) { - JJCalls p = jj_2_rtns[index]; - while (p.gen > jj_gen) { - if (p.next == null) { - p = p.next = new JJCalls(); - break; - } - p = p.next; - } - p.gen = jj_gen + xla - jj_la; - p.first = token; - p.arg = xla; - } + private boolean jj_3R_265() { + if (jj_scan_token(INTERPOLATION)) return true; + return false; + } - static final class JJCalls { - int gen; - Token first; - int arg; - JJCalls next; - } + private boolean jj_3_3() { + if (jj_3R_179()) return true; + return false; + } + + private boolean jj_3R_268() { + if (jj_scan_token(PLUS)) return true; + return false; + } + + private boolean jj_3R_258() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_267()) { + jj_scanpos = xsp; + if (jj_3R_268()) return true; + } + return false; + } + + private boolean jj_3R_267() { + if (jj_scan_token(MINUS)) return true; + return false; + } + + private boolean jj_3R_263() { + if (jj_scan_token(UNICODERANGE)) return true; + return false; + } + + private boolean jj_3_8() { + Token xsp; + xsp = jj_scanpos; + if (jj_3_9()) jj_scanpos = xsp; + if (jj_3R_187()) return true; + return false; + } + + private boolean jj_3R_192() { + if (jj_scan_token(SEMICOLON)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_190() { + if (jj_3R_187()) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_3_8()) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_189() { + if (jj_scan_token(VARIABLE)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_253() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_264()) { + jj_scanpos = xsp; + if (jj_3R_265()) return true; + } + return false; + } + + private boolean jj_3R_264() { + if (jj_scan_token(IDENT)) return true; + return false; + } + + private boolean jj_3R_205() { + Token xsp; + if (jj_3R_253()) return true; + while (true) { + xsp = jj_scanpos; + if (jj_3R_253()) { jj_scanpos = xsp; break; } + } + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_215() { + if (jj_scan_token(MINUS)) return true; + Token xsp; + if (jj_scan_token(1)) return true; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_191() { + if (jj_3R_216()) return true; + return false; + } + + private boolean jj_3R_214() { + if (jj_scan_token(PLUS)) return true; + Token xsp; + if (jj_scan_token(1)) return true; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + /** Generated Token Manager. */ + public ParserTokenManager token_source; + /** Current token. */ + public Token token; + /** Next token. */ + public Token jj_nt; + private int jj_ntk; + private Token jj_scanpos, jj_lastpos; + private int jj_la; + private int jj_gen; + final private int[] jj_la1 = new int[267]; + static private int[] jj_la1_0; + static private int[] jj_la1_1; + static private int[] jj_la1_2; + static private int[] jj_la1_3; + static { + jj_la1_init_0(); + jj_la1_init_1(); + jj_la1_init_2(); + jj_la1_init_3(); + } + private static void jj_la1_init_0() { + jj_la1_0 = new int[] {0x0,0x302,0x302,0x0,0x300,0x2,0x2,0x2,0xd4c40000,0x0,0x300,0x2,0x300,0x2,0x0,0x2,0x2,0x2,0x0,0x0,0x2,0x2,0x0,0x0,0x2,0x0,0x2,0x100000,0x2,0x0,0x2,0x2,0xd4c40000,0xd4c40000,0x2,0x2,0x2,0xd4fd1500,0xd4fd1500,0x2,0x2,0x2,0x0,0x0,0x2,0x0,0x200000,0x2,0x0,0x2,0x2,0x2,0x2,0x0,0x200000,0x2,0x0,0x2,0x391500,0xc40000,0xc40002,0xc40000,0x2,0x2,0x80120002,0x80120002,0x2,0x0,0x0,0x2,0x2,0x2,0x2,0xd4c40000,0xd4c40000,0x2,0x100000,0x2,0xd4c40000,0x2,0x84000000,0x84000000,0x84000000,0x84000000,0x84000000,0x84000000,0x84000000,0x84000000,0x84000000,0x84000000,0xd4000000,0x0,0x0,0x0,0x0,0x50000000,0x2,0x2,0x3f000,0x2,0x0,0x2,0x3f000,0x0,0x2,0x0,0x2,0x0,0x2,0x200000,0x0,0xd4c40000,0x0,0x134e0002,0x2,0xd4c40000,0xd4c40000,0x2,0x0,0x2,0x134e0002,0x0,0x2,0xd4c40000,0xd4c40000,0x2,0x134e0002,0x2,0x2,0x2,0x0,0x2,0xd4c40000,0x2,0x2,0x100000,0x2,0x2,0x2,0x2,0x0,0x2,0xd4c40000,0xd4c40000,0x2,0x100000,0x2,0x2,0x2,0x100000,0x0,0x0,0x800c0000,0x2,0x0,0x100000,0x2,0x800c0000,0x2,0x0,0x2,0x2,0x0,0x2,0x200000,0x2,0xd4c40000,0xd4c40000,0x2,0x200400,0x2,0x2,0x0,0x2,0x0,0x2,0x2,0x2,0x100000,0x2,0x2,0x2,0x2,0x2,0x0,0x2,0x2,0x2,0x100000,0x2,0x2,0x2,0x0,0x2,0x2,0x2,0x100000,0x2,0x2,0x0,0x2,0x0,0x2,0x2,0x2,0x100000,0x0,0x2,0x2,0x0,0x2,0x2,0x2,0x200000,0x2,0x2,0x200000,0x2,0x2,0x0,0x200000,0x2,0x0,0x2,0x0,0xd4c40000,0x2,0x0,0x2,0x0,0x200000,0x2,0x0,0x2,0x800c0400,0x2,0x0,0x2,0x2,0x2,0x2,0x2,0x2,0x2,0x2,0x321c0000,0xc0000,0x800c0000,0xc0000,0x0,0x80000000,0x0,0x80000000,0x800c0000,0x2,0x2,0x800c0000,0x2,0xd4c40000,0x2,0x2,0x2,0x0,0x200000,0x2,0x0,0x2,}; + } + private static void jj_la1_init_1() { + jj_la1_1 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x566000c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x80,0x0,0x0,0x120000,0x120000,0x0,0x120000,0x0,0x0,0x0,0x120000,0x0,0x0,0x564000c0,0x564000c0,0x0,0x0,0x0,0x60001c0,0x60001c0,0x0,0x0,0x0,0x0,0x40,0x0,0x80,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x80,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0xc2,0xc2,0x0,0x80,0x80,0x0,0x0,0x0,0x0,0x564000c0,0x564000c0,0x0,0x0,0x0,0xc0,0x0,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0xc0,0x80,0x80,0x80,0x80,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x50000000,0x64000c0,0x50000000,0x3f,0x0,0x564000c0,0x564000c0,0x0,0x80000000,0x0,0x3f,0x0,0x0,0x564000c0,0x564000c0,0x0,0x3f,0x0,0x0,0x0,0x0,0x0,0x564000c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x564000c0,0x564000c0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x40,0x160040,0x0,0x40,0x0,0x0,0x160040,0x0,0x40,0x0,0x0,0x80,0x0,0x0,0x0,0x61200c0,0x61200c0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x6000000,0x0,0x0,0x60000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x80,0x0,0x6000000,0xc0,0x0,0x0,0x0,0x80,0x0,0x0,0x80,0x0,0x160000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x160000,0x0,0x0,0x0,0x160000,0x160000,0x160000,0x0,0x0,0x160000,0x0,0x60000c0,0x0,0x0,0x0,0x80,0x0,0x0,0x80,0x0,}; + } + private static void jj_la1_init_2() { + jj_la1_2 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x1000,0x0,0x0,0x0,0x0,0x880,0x0,0x0,0x0,0x100,0x100,0x0,0x0,0x2008,0x2008,0x0,0x2000,0x0,0x0,0x0,0x2000,0x0,0x0,0x1119,0x1119,0x0,0x0,0x0,0x2b80,0x2b80,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x2a80,0x0,0x0,0x0,0x0,0x0,0x380,0x380,0x0,0x100,0x100,0x0,0x0,0x0,0x0,0x1119,0x1119,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x100,0x100,0x100,0x100,0x100,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x100,0x0,0x40,0x0,0x0,0x0,0x109,0x1000,0x1300,0x0,0x1109,0x1109,0x0,0x0,0x0,0x1300,0x20,0x0,0x1109,0x1109,0x0,0x1300,0x0,0x0,0x0,0x1100,0x0,0x1109,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x1109,0x1109,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x1000,0xfffffb80,0x0,0x0,0x0,0x0,0xfffffb80,0x0,0x0,0x0,0x0,0x1100,0x0,0x0,0x0,0x2100,0x2100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0xfffffb80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffb80,0x0,0xffffe200,0x0,0x100,0x980,0xffffeb80,0x0,0x0,0xfffffb80,0x0,0x100,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,}; + } + private static void jj_la1_init_3() { + jj_la1_3 = new int[] {0x8,0x80,0x80,0x2,0x80,0x0,0x0,0x0,0x75,0x0,0x80,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc5,0xc5,0x0,0x0,0x0,0xc401bf,0xc401bf,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc401be,0x0,0x0,0x0,0x0,0x0,0x400000,0x400000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc7,0xc7,0x0,0x0,0x0,0x1,0x0,0x1,0x1,0x0,0x0,0x1,0x1,0x1,0x1,0x1,0x1,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0x0,0x0,0x0,0x0,0x45,0x80,0x200000,0x0,0xe5,0xe5,0x0,0x0,0x0,0x200000,0x0,0x0,0xe5,0xe5,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc5,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0xf5,0xf5,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x440001,0x0,0x0,0x0,0x0,0x440001,0x0,0x0,0x0,0x0,0x400000,0x0,0x0,0x0,0x1,0x1,0x0,0x0,0x0,0x0,0x380000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x440001,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x440001,0x0,0x400000,0x0,0x0,0x40001,0x440001,0x0,0x0,0x440001,0x0,0x37,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,}; + } + final private JJCalls[] jj_2_rtns = new JJCalls[9]; + private boolean jj_rescan = false; + private int jj_gc = 0; + + /** Constructor with user supplied CharStream. */ + public Parser(CharStream stream) { + token_source = new ParserTokenManager(stream); + token = new Token(); + jj_ntk = -1; + jj_gen = 0; + for (int i = 0; i < 267; i++) jj_la1[i] = -1; + for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); + } + + /** Reinitialise. */ + public void ReInit(CharStream stream) { + token_source.ReInit(stream); + token = new Token(); + jj_ntk = -1; + jj_gen = 0; + for (int i = 0; i < 267; i++) jj_la1[i] = -1; + for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); + } + + /** Constructor with generated Token Manager. */ + public Parser(ParserTokenManager tm) { + token_source = tm; + token = new Token(); + jj_ntk = -1; + jj_gen = 0; + for (int i = 0; i < 267; i++) jj_la1[i] = -1; + for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); + } + + /** Reinitialise. */ + public void ReInit(ParserTokenManager tm) { + token_source = tm; + token = new Token(); + jj_ntk = -1; + jj_gen = 0; + for (int i = 0; i < 267; i++) jj_la1[i] = -1; + for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); + } + + private Token jj_consume_token(int kind) throws ParseException { + Token oldToken; + if ((oldToken = token).next != null) token = token.next; + else token = token.next = token_source.getNextToken(); + jj_ntk = -1; + if (token.kind == kind) { + jj_gen++; + if (++jj_gc > 100) { + jj_gc = 0; + for (int i = 0; i < jj_2_rtns.length; i++) { + JJCalls c = jj_2_rtns[i]; + while (c != null) { + if (c.gen < jj_gen) c.first = null; + c = c.next; + } + } + } + return token; + } + token = oldToken; + jj_kind = kind; + throw generateParseException(); + } + + static private final class LookaheadSuccess extends java.lang.Error { } + final private LookaheadSuccess jj_ls = new LookaheadSuccess(); + private boolean jj_scan_token(int kind) { + if (jj_scanpos == jj_lastpos) { + jj_la--; + if (jj_scanpos.next == null) { + jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken(); + } else { + jj_lastpos = jj_scanpos = jj_scanpos.next; + } + } else { + jj_scanpos = jj_scanpos.next; + } + if (jj_rescan) { + int i = 0; Token tok = token; + while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; } + if (tok != null) jj_add_error_token(kind, i); + } + if (jj_scanpos.kind != kind) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) throw jj_ls; + return false; + } + + +/** Get the next Token. */ + final public Token getNextToken() { + if (token.next != null) token = token.next; + else token = token.next = token_source.getNextToken(); + jj_ntk = -1; + jj_gen++; + return token; + } + +/** Get the specific Token. */ + final public Token getToken(int index) { + Token t = token; + for (int i = 0; i < index; i++) { + if (t.next != null) t = t.next; + else t = t.next = token_source.getNextToken(); + } + return t; + } + + private int jj_ntk() { + if ((jj_nt=token.next) == null) + return (jj_ntk = (token.next=token_source.getNextToken()).kind); + else + return (jj_ntk = jj_nt.kind); + } + + private java.util.List jj_expentries = new java.util.ArrayList(); + private int[] jj_expentry; + private int jj_kind = -1; + private int[] jj_lasttokens = new int[100]; + private int jj_endpos; + + private void jj_add_error_token(int kind, int pos) { + if (pos >= 100) return; + if (pos == jj_endpos + 1) { + jj_lasttokens[jj_endpos++] = kind; + } else if (jj_endpos != 0) { + jj_expentry = new int[jj_endpos]; + for (int i = 0; i < jj_endpos; i++) { + jj_expentry[i] = jj_lasttokens[i]; + } + jj_entries_loop: for (java.util.Iterator it = jj_expentries.iterator(); it.hasNext();) { + int[] oldentry = (int[])(it.next()); + if (oldentry.length == jj_expentry.length) { + for (int i = 0; i < jj_expentry.length; i++) { + if (oldentry[i] != jj_expentry[i]) { + continue jj_entries_loop; + } + } + jj_expentries.add(jj_expentry); + break jj_entries_loop; + } + } + if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind; + } + } + + /** Generate ParseException. */ + public ParseException generateParseException() { + jj_expentries.clear(); + boolean[] la1tokens = new boolean[120]; + if (jj_kind >= 0) { + la1tokens[jj_kind] = true; + jj_kind = -1; + } + for (int i = 0; i < 267; i++) { + if (jj_la1[i] == jj_gen) { + for (int j = 0; j < 32; j++) { + if ((jj_la1_0[i] & (1< jj_gen) { + jj_la = p.arg; jj_lastpos = jj_scanpos = p.first; + switch (i) { + case 0: jj_3_1(); break; + case 1: jj_3_2(); break; + case 2: jj_3_3(); break; + case 3: jj_3_4(); break; + case 4: jj_3_5(); break; + case 5: jj_3_6(); break; + case 6: jj_3_7(); break; + case 7: jj_3_8(); break; + case 8: jj_3_9(); break; + } + } + p = p.next; + } while (p != null); + } catch(LookaheadSuccess ls) { } + } + jj_rescan = false; + } + + private void jj_save(int index, int xla) { + JJCalls p = jj_2_rtns[index]; + while (p.gen > jj_gen) { + if (p.next == null) { p = p.next = new JJCalls(); break; } + p = p.next; + } + p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla; + } + + static final class JJCalls { + int gen; + Token first; + int arg; + JJCalls next; + } } diff --git a/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.jj b/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.jj index 26707b4955..d6861a8652 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.jj +++ b/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.jj @@ -848,7 +848,7 @@ void keyframes() : n= ( )* {keyframeName = n.image;} (n = {animationname += n.image; }|n = < INTERPOLATION >{ animationname += n.image; })+()* {start = true; documentHandler.startKeyFrames(keyframeName, animationname); } - ( )* ( keyframeSelector() )* ( )* + ( )* ( keyframeSelector() | contentDirective() )* ( )* } catch (ParseException e) { reportError(getLocator(), e); skipStatement(); @@ -862,14 +862,17 @@ void keyframes() : void keyframeSelector(): { Token n; + String selector = ""; boolean start = false; } { try{ - (n = | n = | n = ) ()* ()* + (n = | n = | n = ){selector += n.image;} ()* + ( ()* (n = | n = | n = ) {selector += (", " + n.image);} ()* )* + ()* { start = true; - documentHandler.startKeyframeSelector(n.image); + documentHandler.startKeyframeSelector(selector); } (ifContentStatement() | microsoftExtension() )* ()* @@ -1726,12 +1729,11 @@ void includeDirective() : ()* (name = property()|name = variableName(){ name = "$"+name;} |(name = functionName() - args = argValuelist()) ) - ()* + args = argValuelist()) ()*) ((";"()*)+ {documentHandler.includeDirective(name, args);} - | ()* {documentHandler.startIncludeContentBlock(name);} - (styleRuleOrDeclarationOrNestedProperties())* + | ()* {documentHandler.startIncludeContentBlock(name, args);} + (styleRuleOrDeclarationOrNestedProperties() | keyframeSelector())* ()* {documentHandler.endIncludeContentBlock();} ) } diff --git a/theme-compiler/src/com/vaadin/sass/internal/parser/ParserConstants.java b/theme-compiler/src/com/vaadin/sass/internal/parser/ParserConstants.java index b5e3b296bd..a3ab622ee9 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/parser/ParserConstants.java +++ b/theme-compiler/src/com/vaadin/sass/internal/parser/ParserConstants.java @@ -16,278 +16,377 @@ /* Generated By:JavaCC: Do not edit this line. ParserConstants.java */ package com.vaadin.sass.internal.parser; + /** - * Token literal values and constants. Generated by - * org.javacc.parser.OtherFilesGen#start() + * Token literal values and constants. + * Generated by org.javacc.parser.OtherFilesGen#start() */ public interface ParserConstants { - /** End of File. */ - int EOF = 0; - /** RegularExpression Id. */ - int S = 1; - /** RegularExpression Id. */ - int SINGLE_LINE_COMMENT = 2; - /** RegularExpression Id. */ - int FORMAL_COMMENT = 5; - /** RegularExpression Id. */ - int MULTI_LINE_COMMENT = 6; - /** RegularExpression Id. */ - int CDO = 8; - /** RegularExpression Id. */ - int CDC = 9; - /** RegularExpression Id. */ - int LBRACE = 10; - /** RegularExpression Id. */ - int RBRACE = 11; - /** RegularExpression Id. */ - int DASHMATCH = 12; - /** RegularExpression Id. */ - int CARETMATCH = 13; - /** RegularExpression Id. */ - int DOLLARMATCH = 14; - /** RegularExpression Id. */ - int STARMATCH = 15; - /** RegularExpression Id. */ - int INCLUDES = 16; - /** RegularExpression Id. */ - int EQ = 17; - /** RegularExpression Id. */ - int PLUS = 18; - /** RegularExpression Id. */ - int MINUS = 19; - /** RegularExpression Id. */ - int COMMA = 20; - /** RegularExpression Id. */ - int SEMICOLON = 21; - /** RegularExpression Id. */ - int PRECEDES = 22; - /** RegularExpression Id. */ - int SIBLING = 23; - /** RegularExpression Id. */ - int SUCCEEDS = 24; - /** RegularExpression Id. */ - int DIV = 25; - /** RegularExpression Id. */ - int LBRACKET = 26; - /** RegularExpression Id. */ - int RBRACKET = 27; - /** RegularExpression Id. */ - int ANY = 28; - /** RegularExpression Id. */ - int MOD = 29; - /** RegularExpression Id. */ - int PARENT = 30; - /** RegularExpression Id. */ - int DOT = 31; - /** RegularExpression Id. */ - int LPARAN = 32; - /** RegularExpression Id. */ - int RPARAN = 33; - /** RegularExpression Id. */ - int COMPARE = 34; - /** RegularExpression Id. */ - int OR = 35; - /** RegularExpression Id. */ - int AND = 36; - /** RegularExpression Id. */ - int NOT_EQ = 37; - /** RegularExpression Id. */ - int COLON = 38; - /** RegularExpression Id. */ - int INTERPOLATION = 39; - /** RegularExpression Id. */ - int NONASCII = 40; - /** RegularExpression Id. */ - int H = 41; - /** RegularExpression Id. */ - int UNICODE = 42; - /** RegularExpression Id. */ - int ESCAPE = 43; - /** RegularExpression Id. */ - int NMSTART = 44; - /** RegularExpression Id. */ - int NMCHAR = 45; - /** RegularExpression Id. */ - int STRINGCHAR = 46; - /** RegularExpression Id. */ - int D = 47; - /** RegularExpression Id. */ - int NAME = 48; - /** RegularExpression Id. */ - int TO = 49; - /** RegularExpression Id. */ - int THROUGH = 50; - /** RegularExpression Id. */ - int EACH_IN = 51; - /** RegularExpression Id. */ - int FROM = 52; - /** RegularExpression Id. */ - int MIXIN_SYM = 53; - /** RegularExpression Id. */ - int INCLUDE_SYM = 54; - /** RegularExpression Id. */ - int FUNCTION_SYM = 55; - /** RegularExpression Id. */ - int RETURN_SYM = 56; - /** RegularExpression Id. */ - int DEBUG_SYM = 57; - /** RegularExpression Id. */ - int WARN_SYM = 58; - /** RegularExpression Id. */ - int FOR_SYM = 59; - /** RegularExpression Id. */ - int EACH_SYM = 60; - /** RegularExpression Id. */ - int WHILE_SYM = 61; - /** RegularExpression Id. */ - int IF_SYM = 62; - /** RegularExpression Id. */ - int ELSE_SYM = 63; - /** RegularExpression Id. */ - int EXTEND_SYM = 64; - /** RegularExpression Id. */ - int MOZ_DOCUMENT_SYM = 65; - /** RegularExpression Id. */ - int SUPPORTS_SYM = 66; - /** RegularExpression Id. */ - int CONTENT_SYM = 67; - /** RegularExpression Id. */ - int MICROSOFT_RULE = 68; - /** RegularExpression Id. */ - int IF = 69; - /** RegularExpression Id. */ - int GUARDED_SYM = 70; - /** RegularExpression Id. */ - int STRING = 71; - /** RegularExpression Id. */ - int IDENT = 72; - /** RegularExpression Id. */ - int NUMBER = 73; - /** RegularExpression Id. */ - int _URL = 74; - /** RegularExpression Id. */ - int URL = 75; - /** RegularExpression Id. */ - int VARIABLE = 76; - /** RegularExpression Id. */ - int PERCENTAGE = 77; - /** RegularExpression Id. */ - int PT = 78; - /** RegularExpression Id. */ - int MM = 79; - /** RegularExpression Id. */ - int CM = 80; - /** RegularExpression Id. */ - int PC = 81; - /** RegularExpression Id. */ - int IN = 82; - /** RegularExpression Id. */ - int PX = 83; - /** RegularExpression Id. */ - int EMS = 84; - /** RegularExpression Id. */ - int LEM = 85; - /** RegularExpression Id. */ - int REM = 86; - /** RegularExpression Id. */ - int EXS = 87; - /** RegularExpression Id. */ - int DEG = 88; - /** RegularExpression Id. */ - int RAD = 89; - /** RegularExpression Id. */ - int GRAD = 90; - /** RegularExpression Id. */ - int MS = 91; - /** RegularExpression Id. */ - int SECOND = 92; - /** RegularExpression Id. */ - int HZ = 93; - /** RegularExpression Id. */ - int KHZ = 94; - /** RegularExpression Id. */ - int DIMEN = 95; - /** RegularExpression Id. */ - int HASH = 96; - /** RegularExpression Id. */ - int IMPORT_SYM = 97; - /** RegularExpression Id. */ - int MEDIA_SYM = 98; - /** RegularExpression Id. */ - int CHARSET_SYM = 99; - /** RegularExpression Id. */ - int PAGE_SYM = 100; - /** RegularExpression Id. */ - int FONT_FACE_SYM = 101; - /** RegularExpression Id. */ - int KEY_FRAME_SYM = 102; - /** RegularExpression Id. */ - int ATKEYWORD = 103; - /** RegularExpression Id. */ - int IMPORTANT_SYM = 104; - /** RegularExpression Id. */ - int RANGE0 = 105; - /** RegularExpression Id. */ - int RANGE1 = 106; - /** RegularExpression Id. */ - int RANGE2 = 107; - /** RegularExpression Id. */ - int RANGE3 = 108; - /** RegularExpression Id. */ - int RANGE4 = 109; - /** RegularExpression Id. */ - int RANGE5 = 110; - /** RegularExpression Id. */ - int RANGE6 = 111; - /** RegularExpression Id. */ - int RANGE = 112; - /** RegularExpression Id. */ - int UNI = 113; - /** RegularExpression Id. */ - int UNICODERANGE = 114; - /** RegularExpression Id. */ - int REMOVE = 115; - /** RegularExpression Id. */ - int APPEND = 116; - /** RegularExpression Id. */ - int CONTAINS = 117; - /** RegularExpression Id. */ - int FUNCTION = 118; - /** RegularExpression Id. */ - int UNKNOWN = 119; + /** End of File. */ + int EOF = 0; + /** RegularExpression Id. */ + int S = 1; + /** RegularExpression Id. */ + int SINGLE_LINE_COMMENT = 2; + /** RegularExpression Id. */ + int FORMAL_COMMENT = 5; + /** RegularExpression Id. */ + int MULTI_LINE_COMMENT = 6; + /** RegularExpression Id. */ + int CDO = 8; + /** RegularExpression Id. */ + int CDC = 9; + /** RegularExpression Id. */ + int LBRACE = 10; + /** RegularExpression Id. */ + int RBRACE = 11; + /** RegularExpression Id. */ + int DASHMATCH = 12; + /** RegularExpression Id. */ + int CARETMATCH = 13; + /** RegularExpression Id. */ + int DOLLARMATCH = 14; + /** RegularExpression Id. */ + int STARMATCH = 15; + /** RegularExpression Id. */ + int INCLUDES = 16; + /** RegularExpression Id. */ + int EQ = 17; + /** RegularExpression Id. */ + int PLUS = 18; + /** RegularExpression Id. */ + int MINUS = 19; + /** RegularExpression Id. */ + int COMMA = 20; + /** RegularExpression Id. */ + int SEMICOLON = 21; + /** RegularExpression Id. */ + int PRECEDES = 22; + /** RegularExpression Id. */ + int SIBLING = 23; + /** RegularExpression Id. */ + int SUCCEEDS = 24; + /** RegularExpression Id. */ + int DIV = 25; + /** RegularExpression Id. */ + int LBRACKET = 26; + /** RegularExpression Id. */ + int RBRACKET = 27; + /** RegularExpression Id. */ + int ANY = 28; + /** RegularExpression Id. */ + int MOD = 29; + /** RegularExpression Id. */ + int PARENT = 30; + /** RegularExpression Id. */ + int DOT = 31; + /** RegularExpression Id. */ + int LPARAN = 32; + /** RegularExpression Id. */ + int RPARAN = 33; + /** RegularExpression Id. */ + int COMPARE = 34; + /** RegularExpression Id. */ + int OR = 35; + /** RegularExpression Id. */ + int AND = 36; + /** RegularExpression Id. */ + int NOT_EQ = 37; + /** RegularExpression Id. */ + int COLON = 38; + /** RegularExpression Id. */ + int INTERPOLATION = 39; + /** RegularExpression Id. */ + int NONASCII = 40; + /** RegularExpression Id. */ + int H = 41; + /** RegularExpression Id. */ + int UNICODE = 42; + /** RegularExpression Id. */ + int ESCAPE = 43; + /** RegularExpression Id. */ + int NMSTART = 44; + /** RegularExpression Id. */ + int NMCHAR = 45; + /** RegularExpression Id. */ + int STRINGCHAR = 46; + /** RegularExpression Id. */ + int D = 47; + /** RegularExpression Id. */ + int NAME = 48; + /** RegularExpression Id. */ + int TO = 49; + /** RegularExpression Id. */ + int THROUGH = 50; + /** RegularExpression Id. */ + int EACH_IN = 51; + /** RegularExpression Id. */ + int FROM = 52; + /** RegularExpression Id. */ + int MIXIN_SYM = 53; + /** RegularExpression Id. */ + int INCLUDE_SYM = 54; + /** RegularExpression Id. */ + int FUNCTION_SYM = 55; + /** RegularExpression Id. */ + int RETURN_SYM = 56; + /** RegularExpression Id. */ + int DEBUG_SYM = 57; + /** RegularExpression Id. */ + int WARN_SYM = 58; + /** RegularExpression Id. */ + int FOR_SYM = 59; + /** RegularExpression Id. */ + int EACH_SYM = 60; + /** RegularExpression Id. */ + int WHILE_SYM = 61; + /** RegularExpression Id. */ + int IF_SYM = 62; + /** RegularExpression Id. */ + int ELSE_SYM = 63; + /** RegularExpression Id. */ + int EXTEND_SYM = 64; + /** RegularExpression Id. */ + int MOZ_DOCUMENT_SYM = 65; + /** RegularExpression Id. */ + int SUPPORTS_SYM = 66; + /** RegularExpression Id. */ + int CONTENT_SYM = 67; + /** RegularExpression Id. */ + int MICROSOFT_RULE = 68; + /** RegularExpression Id. */ + int IF = 69; + /** RegularExpression Id. */ + int GUARDED_SYM = 70; + /** RegularExpression Id. */ + int STRING = 71; + /** RegularExpression Id. */ + int IDENT = 72; + /** RegularExpression Id. */ + int NUMBER = 73; + /** RegularExpression Id. */ + int _URL = 74; + /** RegularExpression Id. */ + int URL = 75; + /** RegularExpression Id. */ + int VARIABLE = 76; + /** RegularExpression Id. */ + int PERCENTAGE = 77; + /** RegularExpression Id. */ + int PT = 78; + /** RegularExpression Id. */ + int MM = 79; + /** RegularExpression Id. */ + int CM = 80; + /** RegularExpression Id. */ + int PC = 81; + /** RegularExpression Id. */ + int IN = 82; + /** RegularExpression Id. */ + int PX = 83; + /** RegularExpression Id. */ + int EMS = 84; + /** RegularExpression Id. */ + int LEM = 85; + /** RegularExpression Id. */ + int REM = 86; + /** RegularExpression Id. */ + int EXS = 87; + /** RegularExpression Id. */ + int DEG = 88; + /** RegularExpression Id. */ + int RAD = 89; + /** RegularExpression Id. */ + int GRAD = 90; + /** RegularExpression Id. */ + int MS = 91; + /** RegularExpression Id. */ + int SECOND = 92; + /** RegularExpression Id. */ + int HZ = 93; + /** RegularExpression Id. */ + int KHZ = 94; + /** RegularExpression Id. */ + int DIMEN = 95; + /** RegularExpression Id. */ + int HASH = 96; + /** RegularExpression Id. */ + int IMPORT_SYM = 97; + /** RegularExpression Id. */ + int MEDIA_SYM = 98; + /** RegularExpression Id. */ + int CHARSET_SYM = 99; + /** RegularExpression Id. */ + int PAGE_SYM = 100; + /** RegularExpression Id. */ + int FONT_FACE_SYM = 101; + /** RegularExpression Id. */ + int KEY_FRAME_SYM = 102; + /** RegularExpression Id. */ + int ATKEYWORD = 103; + /** RegularExpression Id. */ + int IMPORTANT_SYM = 104; + /** RegularExpression Id. */ + int RANGE0 = 105; + /** RegularExpression Id. */ + int RANGE1 = 106; + /** RegularExpression Id. */ + int RANGE2 = 107; + /** RegularExpression Id. */ + int RANGE3 = 108; + /** RegularExpression Id. */ + int RANGE4 = 109; + /** RegularExpression Id. */ + int RANGE5 = 110; + /** RegularExpression Id. */ + int RANGE6 = 111; + /** RegularExpression Id. */ + int RANGE = 112; + /** RegularExpression Id. */ + int UNI = 113; + /** RegularExpression Id. */ + int UNICODERANGE = 114; + /** RegularExpression Id. */ + int REMOVE = 115; + /** RegularExpression Id. */ + int APPEND = 116; + /** RegularExpression Id. */ + int CONTAINS = 117; + /** RegularExpression Id. */ + int FUNCTION = 118; + /** RegularExpression Id. */ + int UNKNOWN = 119; - /** Lexical state. */ - int DEFAULT = 0; - /** Lexical state. */ - int IN_FORMAL_COMMENT = 1; - /** Lexical state. */ - int IN_MULTI_LINE_COMMENT = 2; + /** Lexical state. */ + int DEFAULT = 0; + /** Lexical state. */ + int IN_FORMAL_COMMENT = 1; + /** Lexical state. */ + int IN_MULTI_LINE_COMMENT = 2; - /** Literal token values. */ - String[] tokenImage = { "", "", "", - "", "\"/*\"", "\"*/\"", "\"*/\"", - "", "\"\"", "\"{\"", "\"}\"", - "\"|=\"", "\"^=\"", "\"$=\"", "\"*=\"", "\"~=\"", "\"=\"", "\"+\"", - "\"-\"", "\",\"", "\";\"", "\">\"", "\"~\"", "\"<\"", "\"/\"", - "\"[\"", "\"]\"", "\"*\"", "\"%\"", "\"&\"", "\".\"", "\"(\"", - "\")\"", "\"==\"", "\"||\"", "\"&&\"", "\"!=\"", "\":\"", - "", "", "", "", "", - "", "", "", "", "", "\"to\"", - "\"through\"", "\"in\"", "\"from\"", "\"@mixin\"", "\"@include\"", - "\"@function\"", "\"@return\"", "\"@debug\"", "\"@warn\"", - "\"@for\"", "\"@each\"", "\"@while\"", "\"@if\"", "\"@else\"", - "\"@extend\"", "\"@-moz-document\"", "\"@supports\"", - "\"@content\"", "", "\"if\"", "", - "", "", "", "<_URL>", "", "", - "", "", "", "", "", "", "", - "", "", "", "", "", "", "", - "", "", "", "", "", "", - "\"@import\"", "\"@media\"", "\"@charset\"", "\"@page\"", - "\"@font-face\"", "", "", - "", "", "", "", "", - "", "", "", "", "", - "", "", "", "", - "", "", }; + /** Literal token values. */ + String[] tokenImage = { + "", + "", + "", + "", + "\"/*\"", + "\"*/\"", + "\"*/\"", + "", + "\"\"", + "\"{\"", + "\"}\"", + "\"|=\"", + "\"^=\"", + "\"$=\"", + "\"*=\"", + "\"~=\"", + "\"=\"", + "\"+\"", + "\"-\"", + "\",\"", + "\";\"", + "\">\"", + "\"~\"", + "\"<\"", + "\"/\"", + "\"[\"", + "\"]\"", + "\"*\"", + "\"%\"", + "\"&\"", + "\".\"", + "\"(\"", + "\")\"", + "\"==\"", + "\"||\"", + "\"&&\"", + "\"!=\"", + "\":\"", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "\"to\"", + "\"through\"", + "\"in\"", + "\"from\"", + "\"@mixin\"", + "\"@include\"", + "\"@function\"", + "\"@return\"", + "\"@debug\"", + "\"@warn\"", + "\"@for\"", + "\"@each\"", + "\"@while\"", + "\"@if\"", + "\"@else\"", + "\"@extend\"", + "\"@-moz-document\"", + "\"@supports\"", + "\"@content\"", + "", + "\"if\"", + "", + "", + "", + "", + "<_URL>", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "\"@import\"", + "\"@media\"", + "\"@charset\"", + "\"@page\"", + "\"@font-face\"", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + }; } diff --git a/theme-compiler/src/com/vaadin/sass/internal/parser/ParserTokenManager.java b/theme-compiler/src/com/vaadin/sass/internal/parser/ParserTokenManager.java index 224a8dbfc1..d54ab4fa7e 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/parser/ParserTokenManager.java +++ b/theme-compiler/src/com/vaadin/sass/internal/parser/ParserTokenManager.java @@ -15,5945 +15,4983 @@ */ /* Generated By:JavaCC: Do not edit this line. ParserTokenManager.java */ package com.vaadin.sass.internal.parser; +import java.io.*; +import java.net.*; +import java.util.ArrayList; +import java.util.Locale; +import java.util.Map; +import java.util.UUID; +import org.w3c.css.sac.ConditionFactory; +import org.w3c.css.sac.Condition; +import org.w3c.css.sac.SelectorFactory; +import org.w3c.css.sac.SelectorList; +import org.w3c.css.sac.Selector; +import org.w3c.css.sac.SimpleSelector; +import org.w3c.css.sac.DocumentHandler; +import org.w3c.css.sac.InputSource; +import org.w3c.css.sac.ErrorHandler; +import org.w3c.css.sac.CSSException; +import org.w3c.css.sac.CSSParseException; +import org.w3c.css.sac.Locator; +import org.w3c.css.sac.LexicalUnit; +import org.w3c.flute.parser.selectors.SelectorFactoryImpl; +import org.w3c.flute.parser.selectors.ConditionFactoryImpl; +import org.w3c.flute.util.Encoding; +import com.vaadin.sass.internal.handler.*; +import com.vaadin.sass.internal.tree.*; /** Token Manager. */ -public class ParserTokenManager implements ParserConstants { +public class ParserTokenManager implements ParserConstants +{ - /** Debug output. */ - public java.io.PrintStream debugStream = System.out; - - /** Set debug output. */ - public void setDebugStream(java.io.PrintStream ds) { - debugStream = ds; - } - - private final int jjStopStringLiteralDfa_0(int pos, long active0, - long active1) { - switch (pos) { - case 0: - if ((active0 & 0xffe0000000000000L) != 0L - || (active1 & 0x3e0000000fL) != 0L) { - return 162; - } - if ((active0 & 0xe000000000000L) != 0L || (active1 & 0x20L) != 0L) { - jjmatchedKind = 72; - return 522; - } - if ((active0 & 0x80000000L) != 0L) { - return 523; - } - if ((active0 & 0x10000000000000L) != 0L) { - jjmatchedKind = 72; - return 29; - } - if ((active0 & 0x4000L) != 0L) { - return 75; - } - if ((active0 & 0x2000010L) != 0L) { - return 216; - } - if ((active0 & 0x80200L) != 0L) { - return 38; - } - if ((active0 & 0x2000000000L) != 0L) { - return 524; - } - return -1; - case 1: - if ((active1 & 0x2L) != 0L) { - return 174; - } - if ((active0 & 0xffe0000000000000L) != 0L - || (active1 & 0x3e0000000dL) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 1; - return 525; - } - if ((active0 & 0x14000000000000L) != 0L) { - jjmatchedKind = 72; - jjmatchedPos = 1; - return 522; - } - if ((active0 & 0xa000000000000L) != 0L || (active1 & 0x20L) != 0L) { - return 522; - } - if ((active0 & 0x10L) != 0L) { - return 221; - } - return -1; - case 2: - if ((active0 & 0xbfe0000000000000L) != 0L - || (active1 & 0x3e0000000dL) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 2; - return 525; - } - if ((active0 & 0x4000000000000000L) != 0L) { - return 525; - } - if ((active1 & 0x2L) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 2; - return 173; - } - if ((active0 & 0x14000000000000L) != 0L) { - jjmatchedKind = 72; - jjmatchedPos = 2; - return 522; - } - return -1; - case 3: - if ((active0 & 0xb7e0000000000000L) != 0L - || (active1 & 0x3e0000000dL) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 3; - return 525; - } - if ((active0 & 0x800000000000000L) != 0L) { - return 525; - } - if ((active0 & 0x4000000000000L) != 0L) { - jjmatchedKind = 72; - jjmatchedPos = 3; - return 522; - } - if ((active0 & 0x10000000000000L) != 0L) { - return 522; - } - if ((active1 & 0x2L) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 3; - return 172; - } - return -1; - case 4: - if ((active0 & 0x9400000000000000L) != 0L - || (active1 & 0x1000000000L) != 0L) { - return 525; - } - if ((active1 & 0x2L) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 4; - return 171; - } - if ((active0 & 0x4000000000000L) != 0L) { - jjmatchedKind = 72; - jjmatchedPos = 4; - return 522; - } - if ((active0 & 0x23e0000000000000L) != 0L - || (active1 & 0x2e0000000dL) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 4; - return 525; - } - return -1; - case 5: - if ((active1 & 0x2L) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 5; - return 170; - } - if ((active0 & 0x4000000000000L) != 0L) { - jjmatchedKind = 72; - jjmatchedPos = 5; - return 522; - } - if ((active0 & 0x2220000000000000L) != 0L - || (active1 & 0x400000000L) != 0L) { - return 525; - } - if ((active0 & 0x1c0000000000000L) != 0L - || (active1 & 0x2a0000000dL) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 5; - return 525; - } - return -1; - case 6: - if ((active0 & 0x100000000000000L) != 0L - || (active1 & 0x200000001L) != 0L) { - return 525; - } - if ((active0 & 0x4000000000000L) != 0L) { - return 522; - } - if ((active0 & 0xc0000000000000L) != 0L - || (active1 & 0x280000000eL) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 6; - return 525; - } - return -1; - case 7: - if ((active0 & 0x40000000000000L) != 0L - || (active1 & 0x800000008L) != 0L) { - return 525; - } - if ((active0 & 0x80000000000000L) != 0L - || (active1 & 0x2000000006L) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 7; - return 525; - } - return -1; - case 8: - if ((active1 & 0x2000000002L) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 8; - return 525; - } - if ((active0 & 0x80000000000000L) != 0L || (active1 & 0x4L) != 0L) { - return 525; - } - return -1; - case 9: - if ((active1 & 0x2L) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 9; - return 525; - } - if ((active1 & 0x2000000000L) != 0L) { - return 525; - } - return -1; - case 10: - if ((active1 & 0x2L) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 10; - return 525; - } - return -1; - case 11: - if ((active1 & 0x2L) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 11; - return 525; - } - return -1; - case 12: - if ((active1 & 0x2L) != 0L) { - jjmatchedKind = 103; - jjmatchedPos = 12; - return 525; - } - return -1; - default: - return -1; - } - } - - private final int jjStartNfa_0(int pos, long active0, long active1) { - return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0, active1), - pos + 1); - } - - private int jjStopAtPos(int pos, int kind) { - jjmatchedKind = kind; - jjmatchedPos = pos; - return pos + 1; - } - - private int jjMoveStringLiteralDfa0_0() { - switch (curChar) { - case 33: - return jjMoveStringLiteralDfa1_0(0x2000000000L, 0x0L); - case 36: - return jjMoveStringLiteralDfa1_0(0x4000L, 0x0L); - case 37: - return jjStopAtPos(0, 29); - case 38: - jjmatchedKind = 30; - return jjMoveStringLiteralDfa1_0(0x1000000000L, 0x0L); - case 40: - return jjStopAtPos(0, 32); - case 41: - return jjStopAtPos(0, 33); - case 42: - jjmatchedKind = 28; - return jjMoveStringLiteralDfa1_0(0x8000L, 0x0L); - case 43: - return jjStopAtPos(0, 18); - case 44: - return jjStopAtPos(0, 20); - case 45: - jjmatchedKind = 19; - return jjMoveStringLiteralDfa1_0(0x200L, 0x0L); - case 46: - return jjStartNfaWithStates_0(0, 31, 523); - case 47: - jjmatchedKind = 25; - return jjMoveStringLiteralDfa1_0(0x10L, 0x0L); - case 58: - return jjStopAtPos(0, 38); - case 59: - return jjStopAtPos(0, 21); - case 60: - jjmatchedKind = 24; - return jjMoveStringLiteralDfa1_0(0x100L, 0x0L); - case 61: - jjmatchedKind = 17; - return jjMoveStringLiteralDfa1_0(0x400000000L, 0x0L); - case 62: - return jjStopAtPos(0, 22); - case 64: - return jjMoveStringLiteralDfa1_0(0xffe0000000000000L, 0x3e0000000fL); - case 91: - return jjStopAtPos(0, 26); - case 93: - return jjStopAtPos(0, 27); - case 94: - return jjMoveStringLiteralDfa1_0(0x2000L, 0x0L); - case 70: - case 102: - return jjMoveStringLiteralDfa1_0(0x10000000000000L, 0x0L); - case 73: - case 105: - return jjMoveStringLiteralDfa1_0(0x8000000000000L, 0x20L); - case 84: - case 116: - return jjMoveStringLiteralDfa1_0(0x6000000000000L, 0x0L); - case 123: - return jjStopAtPos(0, 10); - case 124: - return jjMoveStringLiteralDfa1_0(0x800001000L, 0x0L); - case 125: - return jjStopAtPos(0, 11); - case 126: - jjmatchedKind = 23; - return jjMoveStringLiteralDfa1_0(0x10000L, 0x0L); - default: - return jjMoveNfa_0(24, 0); - } - } - - private int jjMoveStringLiteralDfa1_0(long active0, long active1) { - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - jjStopStringLiteralDfa_0(0, active0, active1); - return 1; - } - switch (curChar) { - case 33: - return jjMoveStringLiteralDfa2_0(active0, 0x100L, active1, 0L); - case 38: - if ((active0 & 0x1000000000L) != 0L) { - return jjStopAtPos(1, 36); - } - break; - case 42: - if ((active0 & 0x10L) != 0L) { - return jjStartNfaWithStates_0(1, 4, 221); - } - break; - case 45: - return jjMoveStringLiteralDfa2_0(active0, 0x200L, active1, 0x2L); - case 61: - if ((active0 & 0x1000L) != 0L) { - return jjStopAtPos(1, 12); - } else if ((active0 & 0x2000L) != 0L) { - return jjStopAtPos(1, 13); - } else if ((active0 & 0x4000L) != 0L) { - return jjStopAtPos(1, 14); - } else if ((active0 & 0x8000L) != 0L) { - return jjStopAtPos(1, 15); - } else if ((active0 & 0x10000L) != 0L) { - return jjStopAtPos(1, 16); - } else if ((active0 & 0x400000000L) != 0L) { - return jjStopAtPos(1, 34); - } else if ((active0 & 0x2000000000L) != 0L) { - return jjStopAtPos(1, 37); - } - break; - case 67: - case 99: - return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x800000008L); - case 68: - case 100: - return jjMoveStringLiteralDfa2_0(active0, 0x200000000000000L, - active1, 0L); - case 69: - case 101: - return jjMoveStringLiteralDfa2_0(active0, 0x9000000000000000L, - active1, 0x1L); - case 70: - case 102: - if ((active1 & 0x20L) != 0L) { - return jjStartNfaWithStates_0(1, 69, 522); - } - return jjMoveStringLiteralDfa2_0(active0, 0x880000000000000L, - active1, 0x2000000000L); - case 72: - case 104: - return jjMoveStringLiteralDfa2_0(active0, 0x4000000000000L, - active1, 0L); - case 73: - case 105: - return jjMoveStringLiteralDfa2_0(active0, 0x4040000000000000L, - active1, 0x200000000L); - case 77: - case 109: - return jjMoveStringLiteralDfa2_0(active0, 0x20000000000000L, - active1, 0x400000000L); - case 78: - case 110: - if ((active0 & 0x8000000000000L) != 0L) { - return jjStartNfaWithStates_0(1, 51, 522); - } - break; - case 79: - case 111: - if ((active0 & 0x2000000000000L) != 0L) { - return jjStartNfaWithStates_0(1, 49, 522); - } - break; - case 80: - case 112: - return jjMoveStringLiteralDfa2_0(active0, 0L, active1, - 0x1000000000L); - case 82: - case 114: - return jjMoveStringLiteralDfa2_0(active0, 0x110000000000000L, - active1, 0L); - case 83: - case 115: - return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x4L); - case 87: - case 119: - return jjMoveStringLiteralDfa2_0(active0, 0x2400000000000000L, - active1, 0L); - case 124: - if ((active0 & 0x800000000L) != 0L) { - return jjStopAtPos(1, 35); - } - break; - default: - break; - } - return jjStartNfa_0(0, active0, active1); - } - - private int jjMoveStringLiteralDfa2_0(long old0, long active0, long old1, - long active1) { - if (((active0 &= old0) | (active1 &= old1)) == 0L) { - return jjStartNfa_0(0, old0, old1); - } - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - jjStopStringLiteralDfa_0(1, active0, active1); - return 2; - } - switch (curChar) { - case 45: - return jjMoveStringLiteralDfa3_0(active0, 0x100L, active1, 0L); - case 62: - if ((active0 & 0x200L) != 0L) { - return jjStopAtPos(2, 9); - } - break; - case 65: - case 97: - return jjMoveStringLiteralDfa3_0(active0, 0x1400000000000000L, - active1, 0x1000000000L); - case 69: - case 101: - return jjMoveStringLiteralDfa3_0(active0, 0x300000000000000L, - active1, 0x400000000L); - case 70: - case 102: - if ((active0 & 0x4000000000000000L) != 0L) { - return jjStartNfaWithStates_0(2, 62, 525); - } - break; - case 72: - case 104: - return jjMoveStringLiteralDfa3_0(active0, 0x2000000000000000L, - active1, 0x800000000L); - case 73: - case 105: - return jjMoveStringLiteralDfa3_0(active0, 0x20000000000000L, - active1, 0L); - case 76: - case 108: - return jjMoveStringLiteralDfa3_0(active0, 0x8000000000000000L, - active1, 0L); - case 77: - case 109: - return jjMoveStringLiteralDfa3_0(active0, 0L, active1, 0x200000002L); - case 78: - case 110: - return jjMoveStringLiteralDfa3_0(active0, 0x40000000000000L, - active1, 0L); - case 79: - case 111: - return jjMoveStringLiteralDfa3_0(active0, 0x810000000000000L, - active1, 0x2000000008L); - case 82: - case 114: - return jjMoveStringLiteralDfa3_0(active0, 0x4000000000000L, - active1, 0L); - case 85: - case 117: - return jjMoveStringLiteralDfa3_0(active0, 0x80000000000000L, - active1, 0x4L); - case 88: - case 120: - return jjMoveStringLiteralDfa3_0(active0, 0L, active1, 0x1L); - default: - break; - } - return jjStartNfa_0(1, active0, active1); - } - - private int jjMoveStringLiteralDfa3_0(long old0, long active0, long old1, - long active1) { - if (((active0 &= old0) | (active1 &= old1)) == 0L) { - return jjStartNfa_0(1, old0, old1); - } - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - jjStopStringLiteralDfa_0(2, active0, active1); - return 3; - } - switch (curChar) { - case 45: - if ((active0 & 0x100L) != 0L) { - return jjStopAtPos(3, 8); - } - break; - case 65: - case 97: - return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x800000000L); - case 66: - case 98: - return jjMoveStringLiteralDfa4_0(active0, 0x200000000000000L, - active1, 0L); - case 67: - case 99: - return jjMoveStringLiteralDfa4_0(active0, 0x1040000000000000L, - active1, 0L); - case 68: - case 100: - return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x400000000L); - case 71: - case 103: - return jjMoveStringLiteralDfa4_0(active0, 0L, active1, - 0x1000000000L); - case 73: - case 105: - return jjMoveStringLiteralDfa4_0(active0, 0x2000000000000000L, - active1, 0L); - case 77: - case 109: - if ((active0 & 0x10000000000000L) != 0L) { - return jjStartNfaWithStates_0(3, 52, 522); - } - break; - case 78: - case 110: - return jjMoveStringLiteralDfa4_0(active0, 0x80000000000000L, - active1, 0x2000000008L); - case 79: - case 111: - return jjMoveStringLiteralDfa4_0(active0, 0x4000000000000L, - active1, 0x2L); - case 80: - case 112: - return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x200000004L); - case 82: - case 114: - if ((active0 & 0x800000000000000L) != 0L) { - return jjStartNfaWithStates_0(3, 59, 525); - } - return jjMoveStringLiteralDfa4_0(active0, 0x400000000000000L, - active1, 0L); - case 83: - case 115: - return jjMoveStringLiteralDfa4_0(active0, 0x8000000000000000L, - active1, 0L); - case 84: - case 116: - return jjMoveStringLiteralDfa4_0(active0, 0x100000000000000L, - active1, 0x1L); - case 88: - case 120: - return jjMoveStringLiteralDfa4_0(active0, 0x20000000000000L, - active1, 0L); - default: - break; - } - return jjStartNfa_0(2, active0, active1); - } - - private int jjMoveStringLiteralDfa4_0(long old0, long active0, long old1, - long active1) { - if (((active0 &= old0) | (active1 &= old1)) == 0L) { - return jjStartNfa_0(2, old0, old1); - } - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - jjStopStringLiteralDfa_0(3, active0, active1); - return 4; - } - switch (curChar) { - case 67: - case 99: - return jjMoveStringLiteralDfa5_0(active0, 0x80000000000000L, - active1, 0L); - case 69: - case 101: - if ((active0 & 0x8000000000000000L) != 0L) { - return jjStartNfaWithStates_0(4, 63, 525); - } else if ((active1 & 0x1000000000L) != 0L) { - return jjStartNfaWithStates_0(4, 100, 525); + /** Debug output. */ + public java.io.PrintStream debugStream = System.out; + /** Set debug output. */ + public void setDebugStream(java.io.PrintStream ds) { debugStream = ds; } +private final int jjStopStringLiteralDfa_0(int pos, long active0, long active1) +{ + switch (pos) + { + case 0: + if ((active0 & 0xffe0000000000000L) != 0L || (active1 & 0x3e0000000fL) != 0L) + return 162; + if ((active0 & 0xe000000000000L) != 0L || (active1 & 0x20L) != 0L) + { + jjmatchedKind = 72; + return 522; + } + if ((active0 & 0x80000000L) != 0L) + return 523; + if ((active0 & 0x10000000000000L) != 0L) + { + jjmatchedKind = 72; + return 29; + } + if ((active0 & 0x4000L) != 0L) + return 75; + if ((active0 & 0x2000010L) != 0L) + return 216; + if ((active0 & 0x80200L) != 0L) + return 38; + if ((active0 & 0x2000000000L) != 0L) + return 524; + return -1; + case 1: + if ((active1 & 0x2L) != 0L) + return 174; + if ((active0 & 0xffe0000000000000L) != 0L || (active1 & 0x3e0000000dL) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 1; + return 525; + } + if ((active0 & 0x14000000000000L) != 0L) + { + jjmatchedKind = 72; + jjmatchedPos = 1; + return 522; + } + if ((active0 & 0xa000000000000L) != 0L || (active1 & 0x20L) != 0L) + return 522; + if ((active0 & 0x10L) != 0L) + return 221; + return -1; + case 2: + if ((active0 & 0xbfe0000000000000L) != 0L || (active1 & 0x3e0000000dL) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 2; + return 525; + } + if ((active0 & 0x4000000000000000L) != 0L) + return 525; + if ((active1 & 0x2L) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 2; + return 173; + } + if ((active0 & 0x14000000000000L) != 0L) + { + jjmatchedKind = 72; + jjmatchedPos = 2; + return 522; + } + return -1; + case 3: + if ((active0 & 0xb7e0000000000000L) != 0L || (active1 & 0x3e0000000dL) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 3; + return 525; + } + if ((active0 & 0x800000000000000L) != 0L) + return 525; + if ((active0 & 0x4000000000000L) != 0L) + { + jjmatchedKind = 72; + jjmatchedPos = 3; + return 522; + } + if ((active0 & 0x10000000000000L) != 0L) + return 522; + if ((active1 & 0x2L) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 3; + return 172; + } + return -1; + case 4: + if ((active0 & 0x9400000000000000L) != 0L || (active1 & 0x1000000000L) != 0L) + return 525; + if ((active1 & 0x2L) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 4; + return 171; + } + if ((active0 & 0x4000000000000L) != 0L) + { + jjmatchedKind = 72; + jjmatchedPos = 4; + return 522; + } + if ((active0 & 0x23e0000000000000L) != 0L || (active1 & 0x2e0000000dL) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 4; + return 525; + } + return -1; + case 5: + if ((active1 & 0x2L) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 5; + return 170; + } + if ((active0 & 0x4000000000000L) != 0L) + { + jjmatchedKind = 72; + jjmatchedPos = 5; + return 522; + } + if ((active0 & 0x2220000000000000L) != 0L || (active1 & 0x400000000L) != 0L) + return 525; + if ((active0 & 0x1c0000000000000L) != 0L || (active1 & 0x2a0000000dL) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 5; + return 525; + } + return -1; + case 6: + if ((active0 & 0x100000000000000L) != 0L || (active1 & 0x200000001L) != 0L) + return 525; + if ((active0 & 0x4000000000000L) != 0L) + return 522; + if ((active0 & 0xc0000000000000L) != 0L || (active1 & 0x280000000eL) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 6; + return 525; + } + return -1; + case 7: + if ((active0 & 0x40000000000000L) != 0L || (active1 & 0x800000008L) != 0L) + return 525; + if ((active0 & 0x80000000000000L) != 0L || (active1 & 0x2000000006L) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 7; + return 525; + } + return -1; + case 8: + if ((active1 & 0x2000000002L) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 8; + return 525; + } + if ((active0 & 0x80000000000000L) != 0L || (active1 & 0x4L) != 0L) + return 525; + return -1; + case 9: + if ((active1 & 0x2L) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 9; + return 525; + } + if ((active1 & 0x2000000000L) != 0L) + return 525; + return -1; + case 10: + if ((active1 & 0x2L) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 10; + return 525; + } + return -1; + case 11: + if ((active1 & 0x2L) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 11; + return 525; + } + return -1; + case 12: + if ((active1 & 0x2L) != 0L) + { + jjmatchedKind = 103; + jjmatchedPos = 12; + return 525; + } + return -1; + default : + return -1; + } +} +private final int jjStartNfa_0(int pos, long active0, long active1) +{ + return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0, active1), pos + 1); +} +private int jjStopAtPos(int pos, int kind) +{ + jjmatchedKind = kind; + jjmatchedPos = pos; + return pos + 1; +} +private int jjMoveStringLiteralDfa0_0() +{ + switch(curChar) + { + case 33: + return jjMoveStringLiteralDfa1_0(0x2000000000L, 0x0L); + case 36: + return jjMoveStringLiteralDfa1_0(0x4000L, 0x0L); + case 37: + return jjStopAtPos(0, 29); + case 38: + jjmatchedKind = 30; + return jjMoveStringLiteralDfa1_0(0x1000000000L, 0x0L); + case 40: + return jjStopAtPos(0, 32); + case 41: + return jjStopAtPos(0, 33); + case 42: + jjmatchedKind = 28; + return jjMoveStringLiteralDfa1_0(0x8000L, 0x0L); + case 43: + return jjStopAtPos(0, 18); + case 44: + return jjStopAtPos(0, 20); + case 45: + jjmatchedKind = 19; + return jjMoveStringLiteralDfa1_0(0x200L, 0x0L); + case 46: + return jjStartNfaWithStates_0(0, 31, 523); + case 47: + jjmatchedKind = 25; + return jjMoveStringLiteralDfa1_0(0x10L, 0x0L); + case 58: + return jjStopAtPos(0, 38); + case 59: + return jjStopAtPos(0, 21); + case 60: + jjmatchedKind = 24; + return jjMoveStringLiteralDfa1_0(0x100L, 0x0L); + case 61: + jjmatchedKind = 17; + return jjMoveStringLiteralDfa1_0(0x400000000L, 0x0L); + case 62: + return jjStopAtPos(0, 22); + case 64: + return jjMoveStringLiteralDfa1_0(0xffe0000000000000L, 0x3e0000000fL); + case 91: + return jjStopAtPos(0, 26); + case 93: + return jjStopAtPos(0, 27); + case 94: + return jjMoveStringLiteralDfa1_0(0x2000L, 0x0L); + case 70: + case 102: + return jjMoveStringLiteralDfa1_0(0x10000000000000L, 0x0L); + case 73: + case 105: + return jjMoveStringLiteralDfa1_0(0x8000000000000L, 0x20L); + case 84: + case 116: + return jjMoveStringLiteralDfa1_0(0x6000000000000L, 0x0L); + case 123: + return jjStopAtPos(0, 10); + case 124: + return jjMoveStringLiteralDfa1_0(0x800001000L, 0x0L); + case 125: + return jjStopAtPos(0, 11); + case 126: + jjmatchedKind = 23; + return jjMoveStringLiteralDfa1_0(0x10000L, 0x0L); + default : + return jjMoveNfa_0(24, 0); + } +} +private int jjMoveStringLiteralDfa1_0(long active0, long active1) +{ + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + jjStopStringLiteralDfa_0(0, active0, active1); + return 1; + } + switch(curChar) + { + case 33: + return jjMoveStringLiteralDfa2_0(active0, 0x100L, active1, 0L); + case 38: + if ((active0 & 0x1000000000L) != 0L) + return jjStopAtPos(1, 36); + break; + case 42: + if ((active0 & 0x10L) != 0L) + return jjStartNfaWithStates_0(1, 4, 221); + break; + case 45: + return jjMoveStringLiteralDfa2_0(active0, 0x200L, active1, 0x2L); + case 61: + if ((active0 & 0x1000L) != 0L) + return jjStopAtPos(1, 12); + else if ((active0 & 0x2000L) != 0L) + return jjStopAtPos(1, 13); + else if ((active0 & 0x4000L) != 0L) + return jjStopAtPos(1, 14); + else if ((active0 & 0x8000L) != 0L) + return jjStopAtPos(1, 15); + else if ((active0 & 0x10000L) != 0L) + return jjStopAtPos(1, 16); + else if ((active0 & 0x400000000L) != 0L) + return jjStopAtPos(1, 34); + else if ((active0 & 0x2000000000L) != 0L) + return jjStopAtPos(1, 37); + break; + case 67: + case 99: + return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x800000008L); + case 68: + case 100: + return jjMoveStringLiteralDfa2_0(active0, 0x200000000000000L, active1, 0L); + case 69: + case 101: + return jjMoveStringLiteralDfa2_0(active0, 0x9000000000000000L, active1, 0x1L); + case 70: + case 102: + if ((active1 & 0x20L) != 0L) + return jjStartNfaWithStates_0(1, 69, 522); + return jjMoveStringLiteralDfa2_0(active0, 0x880000000000000L, active1, 0x2000000000L); + case 72: + case 104: + return jjMoveStringLiteralDfa2_0(active0, 0x4000000000000L, active1, 0L); + case 73: + case 105: + return jjMoveStringLiteralDfa2_0(active0, 0x4040000000000000L, active1, 0x200000000L); + case 77: + case 109: + return jjMoveStringLiteralDfa2_0(active0, 0x20000000000000L, active1, 0x400000000L); + case 78: + case 110: + if ((active0 & 0x8000000000000L) != 0L) + return jjStartNfaWithStates_0(1, 51, 522); + break; + case 79: + case 111: + if ((active0 & 0x2000000000000L) != 0L) + return jjStartNfaWithStates_0(1, 49, 522); + break; + case 80: + case 112: + return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x1000000000L); + case 82: + case 114: + return jjMoveStringLiteralDfa2_0(active0, 0x110000000000000L, active1, 0L); + case 83: + case 115: + return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x4L); + case 87: + case 119: + return jjMoveStringLiteralDfa2_0(active0, 0x2400000000000000L, active1, 0L); + case 124: + if ((active0 & 0x800000000L) != 0L) + return jjStopAtPos(1, 35); + break; + default : + break; + } + return jjStartNfa_0(0, active0, active1); +} +private int jjMoveStringLiteralDfa2_0(long old0, long active0, long old1, long active1) +{ + if (((active0 &= old0) | (active1 &= old1)) == 0L) + return jjStartNfa_0(0, old0, old1); + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + jjStopStringLiteralDfa_0(1, active0, active1); + return 2; + } + switch(curChar) + { + case 45: + return jjMoveStringLiteralDfa3_0(active0, 0x100L, active1, 0L); + case 62: + if ((active0 & 0x200L) != 0L) + return jjStopAtPos(2, 9); + break; + case 65: + case 97: + return jjMoveStringLiteralDfa3_0(active0, 0x1400000000000000L, active1, 0x1000000000L); + case 69: + case 101: + return jjMoveStringLiteralDfa3_0(active0, 0x300000000000000L, active1, 0x400000000L); + case 70: + case 102: + if ((active0 & 0x4000000000000000L) != 0L) + return jjStartNfaWithStates_0(2, 62, 525); + break; + case 72: + case 104: + return jjMoveStringLiteralDfa3_0(active0, 0x2000000000000000L, active1, 0x800000000L); + case 73: + case 105: + return jjMoveStringLiteralDfa3_0(active0, 0x20000000000000L, active1, 0L); + case 76: + case 108: + return jjMoveStringLiteralDfa3_0(active0, 0x8000000000000000L, active1, 0L); + case 77: + case 109: + return jjMoveStringLiteralDfa3_0(active0, 0L, active1, 0x200000002L); + case 78: + case 110: + return jjMoveStringLiteralDfa3_0(active0, 0x40000000000000L, active1, 0L); + case 79: + case 111: + return jjMoveStringLiteralDfa3_0(active0, 0x810000000000000L, active1, 0x2000000008L); + case 82: + case 114: + return jjMoveStringLiteralDfa3_0(active0, 0x4000000000000L, active1, 0L); + case 85: + case 117: + return jjMoveStringLiteralDfa3_0(active0, 0x80000000000000L, active1, 0x4L); + case 88: + case 120: + return jjMoveStringLiteralDfa3_0(active0, 0L, active1, 0x1L); + default : + break; + } + return jjStartNfa_0(1, active0, active1); +} +private int jjMoveStringLiteralDfa3_0(long old0, long active0, long old1, long active1) +{ + if (((active0 &= old0) | (active1 &= old1)) == 0L) + return jjStartNfa_0(1, old0, old1); + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + jjStopStringLiteralDfa_0(2, active0, active1); + return 3; + } + switch(curChar) + { + case 45: + if ((active0 & 0x100L) != 0L) + return jjStopAtPos(3, 8); + break; + case 65: + case 97: + return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x800000000L); + case 66: + case 98: + return jjMoveStringLiteralDfa4_0(active0, 0x200000000000000L, active1, 0L); + case 67: + case 99: + return jjMoveStringLiteralDfa4_0(active0, 0x1040000000000000L, active1, 0L); + case 68: + case 100: + return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x400000000L); + case 71: + case 103: + return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x1000000000L); + case 73: + case 105: + return jjMoveStringLiteralDfa4_0(active0, 0x2000000000000000L, active1, 0L); + case 77: + case 109: + if ((active0 & 0x10000000000000L) != 0L) + return jjStartNfaWithStates_0(3, 52, 522); + break; + case 78: + case 110: + return jjMoveStringLiteralDfa4_0(active0, 0x80000000000000L, active1, 0x2000000008L); + case 79: + case 111: + return jjMoveStringLiteralDfa4_0(active0, 0x4000000000000L, active1, 0x2L); + case 80: + case 112: + return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x200000004L); + case 82: + case 114: + if ((active0 & 0x800000000000000L) != 0L) + return jjStartNfaWithStates_0(3, 59, 525); + return jjMoveStringLiteralDfa4_0(active0, 0x400000000000000L, active1, 0L); + case 83: + case 115: + return jjMoveStringLiteralDfa4_0(active0, 0x8000000000000000L, active1, 0L); + case 84: + case 116: + return jjMoveStringLiteralDfa4_0(active0, 0x100000000000000L, active1, 0x1L); + case 88: + case 120: + return jjMoveStringLiteralDfa4_0(active0, 0x20000000000000L, active1, 0L); + default : + break; + } + return jjStartNfa_0(2, active0, active1); +} +private int jjMoveStringLiteralDfa4_0(long old0, long active0, long old1, long active1) +{ + if (((active0 &= old0) | (active1 &= old1)) == 0L) + return jjStartNfa_0(2, old0, old1); + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + jjStopStringLiteralDfa_0(3, active0, active1); + return 4; + } + switch(curChar) + { + case 67: + case 99: + return jjMoveStringLiteralDfa5_0(active0, 0x80000000000000L, active1, 0L); + case 69: + case 101: + if ((active0 & 0x8000000000000000L) != 0L) + return jjStartNfaWithStates_0(4, 63, 525); + else if ((active1 & 0x1000000000L) != 0L) + return jjStartNfaWithStates_0(4, 100, 525); + return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x1L); + case 72: + case 104: + if ((active0 & 0x1000000000000000L) != 0L) + return jjStartNfaWithStates_0(4, 60, 525); + break; + case 73: + case 105: + return jjMoveStringLiteralDfa5_0(active0, 0x20000000000000L, active1, 0x400000000L); + case 76: + case 108: + return jjMoveStringLiteralDfa5_0(active0, 0x2040000000000000L, active1, 0L); + case 78: + case 110: + if ((active0 & 0x400000000000000L) != 0L) + return jjStartNfaWithStates_0(4, 58, 525); + break; + case 79: + case 111: + return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x200000000L); + case 80: + case 112: + return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x4L); + case 82: + case 114: + return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x800000000L); + case 84: + case 116: + return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x2000000008L); + case 85: + case 117: + return jjMoveStringLiteralDfa5_0(active0, 0x304000000000000L, active1, 0L); + case 90: + case 122: + return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x2L); + default : + break; + } + return jjStartNfa_0(3, active0, active1); +} +private int jjMoveStringLiteralDfa5_0(long old0, long active0, long old1, long active1) +{ + if (((active0 &= old0) | (active1 &= old1)) == 0L) + return jjStartNfa_0(3, old0, old1); + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + jjStopStringLiteralDfa_0(4, active0, active1); + return 5; + } + switch(curChar) + { + case 45: + return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x2000000002L); + case 65: + case 97: + if ((active1 & 0x400000000L) != 0L) + return jjStartNfaWithStates_0(5, 98, 525); + break; + case 69: + case 101: + if ((active0 & 0x2000000000000000L) != 0L) + return jjStartNfaWithStates_0(5, 61, 525); + return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x8L); + case 71: + case 103: + if ((active0 & 0x200000000000000L) != 0L) + return jjStartNfaWithStates_0(5, 57, 525); + return jjMoveStringLiteralDfa6_0(active0, 0x4000000000000L, active1, 0L); + case 78: + case 110: + if ((active0 & 0x20000000000000L) != 0L) + return jjStartNfaWithStates_0(5, 53, 525); + return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x1L); + case 79: + case 111: + return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x4L); + case 82: + case 114: + return jjMoveStringLiteralDfa6_0(active0, 0x100000000000000L, active1, 0x200000000L); + case 83: + case 115: + return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x800000000L); + case 84: + case 116: + return jjMoveStringLiteralDfa6_0(active0, 0x80000000000000L, active1, 0L); + case 85: + case 117: + return jjMoveStringLiteralDfa6_0(active0, 0x40000000000000L, active1, 0L); + default : + break; + } + return jjStartNfa_0(4, active0, active1); +} +private int jjMoveStringLiteralDfa6_0(long old0, long active0, long old1, long active1) +{ + if (((active0 &= old0) | (active1 &= old1)) == 0L) + return jjStartNfa_0(4, old0, old1); + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + jjStopStringLiteralDfa_0(5, active0, active1); + return 6; + } + switch(curChar) + { + case 68: + case 100: + if ((active1 & 0x1L) != 0L) + return jjStartNfaWithStates_0(6, 64, 525); + return jjMoveStringLiteralDfa7_0(active0, 0x40000000000000L, active1, 0x2L); + case 69: + case 101: + return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x800000000L); + case 70: + case 102: + return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x2000000000L); + case 72: + case 104: + if ((active0 & 0x4000000000000L) != 0L) + return jjStartNfaWithStates_0(6, 50, 522); + break; + case 73: + case 105: + return jjMoveStringLiteralDfa7_0(active0, 0x80000000000000L, active1, 0L); + case 78: + case 110: + if ((active0 & 0x100000000000000L) != 0L) + return jjStartNfaWithStates_0(6, 56, 525); + return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x8L); + case 82: + case 114: + return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x4L); + case 84: + case 116: + if ((active1 & 0x200000000L) != 0L) + return jjStartNfaWithStates_0(6, 97, 525); + break; + default : + break; + } + return jjStartNfa_0(5, active0, active1); +} +private int jjMoveStringLiteralDfa7_0(long old0, long active0, long old1, long active1) +{ + if (((active0 &= old0) | (active1 &= old1)) == 0L) + return jjStartNfa_0(5, old0, old1); + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + jjStopStringLiteralDfa_0(6, active0, active1); + return 7; + } + switch(curChar) + { + case 65: + case 97: + return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0x2000000000L); + case 69: + case 101: + if ((active0 & 0x40000000000000L) != 0L) + return jjStartNfaWithStates_0(7, 54, 525); + break; + case 79: + case 111: + return jjMoveStringLiteralDfa8_0(active0, 0x80000000000000L, active1, 0x2L); + case 84: + case 116: + if ((active1 & 0x8L) != 0L) + return jjStartNfaWithStates_0(7, 67, 525); + else if ((active1 & 0x800000000L) != 0L) + return jjStartNfaWithStates_0(7, 99, 525); + return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0x4L); + default : + break; + } + return jjStartNfa_0(6, active0, active1); +} +private int jjMoveStringLiteralDfa8_0(long old0, long active0, long old1, long active1) +{ + if (((active0 &= old0) | (active1 &= old1)) == 0L) + return jjStartNfa_0(6, old0, old1); + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + jjStopStringLiteralDfa_0(7, active0, active1); + return 8; + } + switch(curChar) + { + case 67: + case 99: + return jjMoveStringLiteralDfa9_0(active0, 0L, active1, 0x2000000002L); + case 78: + case 110: + if ((active0 & 0x80000000000000L) != 0L) + return jjStartNfaWithStates_0(8, 55, 525); + break; + case 83: + case 115: + if ((active1 & 0x4L) != 0L) + return jjStartNfaWithStates_0(8, 66, 525); + break; + default : + break; + } + return jjStartNfa_0(7, active0, active1); +} +private int jjMoveStringLiteralDfa9_0(long old0, long active0, long old1, long active1) +{ + if (((active0 &= old0) | (active1 &= old1)) == 0L) + return jjStartNfa_0(7, old0, old1); + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + jjStopStringLiteralDfa_0(8, 0L, active1); + return 9; + } + switch(curChar) + { + case 69: + case 101: + if ((active1 & 0x2000000000L) != 0L) + return jjStartNfaWithStates_0(9, 101, 525); + break; + case 85: + case 117: + return jjMoveStringLiteralDfa10_0(active1, 0x2L); + default : + break; + } + return jjStartNfa_0(8, 0L, active1); +} +private int jjMoveStringLiteralDfa10_0(long old1, long active1) +{ + if (((active1 &= old1)) == 0L) + return jjStartNfa_0(8, 0L, old1); + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + jjStopStringLiteralDfa_0(9, 0L, active1); + return 10; + } + switch(curChar) + { + case 77: + case 109: + return jjMoveStringLiteralDfa11_0(active1, 0x2L); + default : + break; + } + return jjStartNfa_0(9, 0L, active1); +} +private int jjMoveStringLiteralDfa11_0(long old1, long active1) +{ + if (((active1 &= old1)) == 0L) + return jjStartNfa_0(9, 0L, old1); + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + jjStopStringLiteralDfa_0(10, 0L, active1); + return 11; + } + switch(curChar) + { + case 69: + case 101: + return jjMoveStringLiteralDfa12_0(active1, 0x2L); + default : + break; + } + return jjStartNfa_0(10, 0L, active1); +} +private int jjMoveStringLiteralDfa12_0(long old1, long active1) +{ + if (((active1 &= old1)) == 0L) + return jjStartNfa_0(10, 0L, old1); + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + jjStopStringLiteralDfa_0(11, 0L, active1); + return 12; + } + switch(curChar) + { + case 78: + case 110: + return jjMoveStringLiteralDfa13_0(active1, 0x2L); + default : + break; + } + return jjStartNfa_0(11, 0L, active1); +} +private int jjMoveStringLiteralDfa13_0(long old1, long active1) +{ + if (((active1 &= old1)) == 0L) + return jjStartNfa_0(11, 0L, old1); + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + jjStopStringLiteralDfa_0(12, 0L, active1); + return 13; + } + switch(curChar) + { + case 84: + case 116: + if ((active1 & 0x2L) != 0L) + return jjStartNfaWithStates_0(13, 65, 525); + break; + default : + break; + } + return jjStartNfa_0(12, 0L, active1); +} +private int jjStartNfaWithStates_0(int pos, int kind, int state) +{ + jjmatchedKind = kind; + jjmatchedPos = pos; + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { return pos + 1; } + return jjMoveNfa_0(state, pos + 1); +} +static final long[] jjbitVec0 = { + 0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL +}; +private int jjMoveNfa_0(int startState, int curPos) +{ + int startsAt = 0; + jjnewStateCnt = 522; + int i = 1; + jjstateSet[0] = startState; + int kind = 0x7fffffff; + for (;;) + { + if (++jjround == 0x7fffffff) + ReInitRounds(); + if (curChar < 64) + { + long l = 1L << curChar; + do + { + switch(jjstateSet[--i]) + { + case 524: + if ((0x100003600L & l) != 0L) + jjCheckNAddTwoStates(256, 265); + if ((0x100003600L & l) != 0L) + jjCheckNAddTwoStates(248, 255); + break; + case 162: + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 108; + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 213; + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 201; + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 185; + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 174; + break; + case 29: + if ((0x3ff200000000000L & l) != 0L) + jjCheckNAddStates(0, 3); + else if ((0x100003600L & l) != 0L) + jjCheckNAddTwoStates(236, 237); + else if (curChar == 40) + { + if (kind > 118) + kind = 118; + } + if ((0x3ff200000000000L & l) != 0L) + { + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + } + break; + case 171: + if ((0x3ff200000000000L & l) != 0L) + { + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + } + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 170; + break; + case 523: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(4, 8); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(327, 330); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(324, 326); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(322, 323); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(319, 321); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(314, 318); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(310, 313); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(306, 309); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(303, 305); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(299, 302); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(295, 298); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(292, 294); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(289, 291); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(286, 288); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(283, 285); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(280, 282); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(277, 279); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(274, 276); + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(272, 273); + if ((0x3ff000000000000L & l) != 0L) + { + if (kind > 73) + kind = 73; + jjCheckNAdd(271); + } + break; + case 525: + case 109: + if ((0x3ff200000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 216: + if (curChar == 42) + jjstateSet[jjnewStateCnt++] = 221; + else if (curChar == 47) + { + if (kind > 2) + kind = 2; + jjCheckNAddStates(9, 11); + } + break; + case 173: + if ((0x3ff200000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 24: + if ((0x3ff000000000000L & l) != 0L) + { + if (kind > 73) + kind = 73; + jjCheckNAddStates(12, 93); + } + else if ((0x100003600L & l) != 0L) + { + if (kind > 1) + kind = 1; + jjCheckNAdd(0); + } + else if (curChar == 46) + jjCheckNAddStates(94, 113); + else if (curChar == 45) + jjAddStates(114, 115); + else if (curChar == 33) + jjCheckNAddStates(116, 119); + else if (curChar == 47) + jjAddStates(120, 121); + else if (curChar == 35) + jjCheckNAddTwoStates(96, 97); + else if (curChar == 36) + jjCheckNAddStates(122, 125); + else if (curChar == 39) + jjCheckNAddStates(126, 129); + else if (curChar == 34) + jjCheckNAddStates(130, 133); + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 38; + else if (curChar == 35) + jjstateSet[jjnewStateCnt++] = 1; + break; + case 172: + if ((0x3ff200000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 170: + if ((0x3ff200000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 75: + if (curChar == 45) + jjCheckNAdd(76); + break; + case 522: + if ((0x3ff200000000000L & l) != 0L) + jjCheckNAddStates(0, 3); + else if ((0x100003600L & l) != 0L) + jjCheckNAddTwoStates(236, 237); + else if (curChar == 40) + { + if (kind > 118) + kind = 118; + } + if ((0x3ff200000000000L & l) != 0L) + { + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + } + break; + case 0: + if ((0x100003600L & l) == 0L) + break; + if (kind > 1) + kind = 1; + jjCheckNAdd(0); + break; + case 2: + if (curChar == 36) + jjCheckNAddStates(134, 137); + break; + case 3: + if (curChar == 45) + jjCheckNAdd(4); + break; + case 5: + if ((0x3ff200000000000L & l) != 0L) + jjCheckNAddStates(138, 140); + break; + case 8: + if ((0xffffffff00000000L & l) != 0L) + jjCheckNAddStates(138, 140); + break; + case 9: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(141, 145); + break; + case 10: + if ((0x100003600L & l) != 0L) + jjCheckNAddStates(138, 140); + break; + case 11: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(146, 153); + break; + case 12: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(154, 157); + break; + case 13: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(158, 162); + break; + case 14: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(163, 168); + break; + case 15: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(169, 175); + break; + case 18: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(176, 180); + break; + case 19: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(181, 188); + break; + case 20: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(189, 192); + break; + case 21: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(193, 197); + break; + case 22: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(198, 203); + break; + case 23: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(204, 210); + break; + case 36: + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 35; + break; + case 39: + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 38; + break; + case 40: + if (curChar == 34) + jjCheckNAddStates(130, 133); + break; + case 41: + if ((0xfffffffb00000200L & l) != 0L) + jjCheckNAddStates(130, 133); + break; + case 42: + if (curChar == 34 && kind > 71) + kind = 71; + break; + case 44: + if (curChar == 12) + jjCheckNAddStates(130, 133); + break; + case 46: + if ((0xffffffff00000000L & l) != 0L) + jjCheckNAddStates(130, 133); + break; + case 47: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(211, 216); + break; + case 48: + if ((0x100003600L & l) != 0L) + jjCheckNAddStates(130, 133); + break; + case 49: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(217, 225); + break; + case 50: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(226, 230); + break; + case 51: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(231, 236); + break; + case 52: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(237, 243); + break; + case 53: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(244, 251); + break; + case 54: + if (curChar == 13) + jjCheckNAddStates(130, 133); + break; + case 55: + if (curChar == 10) + jjCheckNAddStates(130, 133); + break; + case 56: + if (curChar == 13) + jjstateSet[jjnewStateCnt++] = 55; + break; + case 57: + if (curChar == 39) + jjCheckNAddStates(126, 129); + break; + case 58: + if ((0xffffff7f00000200L & l) != 0L) + jjCheckNAddStates(126, 129); + break; + case 59: + if (curChar == 39 && kind > 71) + kind = 71; + break; + case 61: + if (curChar == 12) + jjCheckNAddStates(126, 129); + break; + case 63: + if ((0xffffffff00000000L & l) != 0L) + jjCheckNAddStates(126, 129); + break; + case 64: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(252, 257); + break; + case 65: + if ((0x100003600L & l) != 0L) + jjCheckNAddStates(126, 129); + break; + case 66: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(258, 266); + break; + case 67: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(267, 271); + break; + case 68: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(272, 277); + break; + case 69: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(278, 284); + break; + case 70: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(285, 292); + break; + case 71: + if (curChar == 13) + jjCheckNAddStates(126, 129); + break; + case 72: + if (curChar == 10) + jjCheckNAddStates(126, 129); + break; + case 73: + if (curChar == 13) + jjstateSet[jjnewStateCnt++] = 72; + break; + case 74: + if (curChar == 36) + jjCheckNAddStates(122, 125); + break; + case 77: + if ((0x3ff200000000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddTwoStates(77, 78); + break; + case 79: + if ((0xffffffff00000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddTwoStates(77, 78); + break; + case 80: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(293, 296); + break; + case 81: + if ((0x100003600L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddTwoStates(77, 78); + break; + case 82: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(297, 303); + break; + case 83: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(304, 306); + break; + case 84: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(307, 310); + break; + case 85: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(311, 315); + break; + case 86: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(316, 321); + break; + case 89: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(322, 325); + break; + case 90: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(326, 332); + break; + case 91: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(333, 335); + break; + case 92: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(336, 339); + break; + case 93: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(340, 344); + break; + case 94: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(345, 350); + break; + case 95: + if (curChar == 35) + jjCheckNAddTwoStates(96, 97); + break; + case 96: + if ((0x3ff200000000000L & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddTwoStates(96, 97); + break; + case 98: + if ((0xffffffff00000000L & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddTwoStates(96, 97); + break; + case 99: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddStates(351, 354); + break; + case 100: + if ((0x100003600L & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddTwoStates(96, 97); + break; + case 101: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddStates(355, 361); + break; + case 102: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddStates(362, 364); + break; + case 103: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddStates(365, 368); + break; + case 104: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddStates(369, 373); + break; + case 105: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddStates(374, 379); + break; + case 107: + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 108; + break; + case 111: + if ((0xffffffff00000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 112: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(380, 383); + break; + case 113: + if ((0x100003600L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 114: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(384, 390); + break; + case 115: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(391, 393); + break; + case 116: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(394, 397); + break; + case 117: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(398, 402); + break; + case 118: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(403, 408); + break; + case 121: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(409, 412); + break; + case 122: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(413, 419); + break; + case 123: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(420, 422); + break; + case 124: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(423, 426); + break; + case 125: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(427, 431); + break; + case 126: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(432, 437); + break; + case 128: + if ((0x100003600L & l) != 0L) + jjAddStates(438, 439); + break; + case 129: + if (curChar == 40 && kind > 115) + kind = 115; + break; + case 136: + if ((0x100003600L & l) != 0L) + jjAddStates(440, 441); + break; + case 137: + if (curChar == 40 && kind > 116) + kind = 116; + break; + case 144: + if ((0x100003600L & l) != 0L) + jjAddStates(442, 443); + break; + case 145: + if (curChar == 40 && kind > 117) + kind = 117; + break; + case 175: + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 174; + break; + case 184: + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 183; + break; + case 186: + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 185; + break; + case 195: + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 194; + break; + case 202: + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 201; + break; + case 211: + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 210; + break; + case 214: + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 213; + break; + case 215: + if (curChar == 47) + jjAddStates(120, 121); + break; + case 217: + if ((0xffffffffffffdbffL & l) == 0L) + break; + if (kind > 2) + kind = 2; + jjCheckNAddStates(9, 11); + break; + case 218: + if ((0x2400L & l) != 0L && kind > 2) + kind = 2; + break; + case 219: + if (curChar == 10 && kind > 2) + kind = 2; + break; + case 220: + if (curChar == 13) + jjstateSet[jjnewStateCnt++] = 219; + break; + case 221: + if (curChar == 42) + jjstateSet[jjnewStateCnt++] = 222; + break; + case 222: + if ((0xffff7fffffffffffL & l) != 0L && kind > 3) + kind = 3; + break; + case 223: + if (curChar == 42) + jjstateSet[jjnewStateCnt++] = 221; + break; + case 225: + if ((0x3ff200000000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + break; + case 227: + if ((0xffffffff00000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + break; + case 228: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(444, 447); + break; + case 229: + if ((0x100003600L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + break; + case 230: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(448, 454); + break; + case 231: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(455, 457); + break; + case 232: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(458, 461); + break; + case 233: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(462, 466); + break; + case 234: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(467, 472); + break; + case 235: + if ((0x3ff200000000000L & l) != 0L) + jjCheckNAddStates(0, 3); + break; + case 236: + if ((0x100003600L & l) != 0L) + jjCheckNAddTwoStates(236, 237); + break; + case 237: + if (curChar == 40 && kind > 118) + kind = 118; + break; + case 239: + if ((0xffffffff00000000L & l) != 0L) + jjCheckNAddStates(0, 3); + break; + case 240: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(473, 477); + break; + case 241: + if ((0x100003600L & l) != 0L) + jjCheckNAddStates(0, 3); + break; + case 242: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(478, 485); + break; + case 243: + case 457: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(486, 489); + break; + case 244: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(490, 494); + break; + case 245: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(495, 500); + break; + case 246: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(501, 507); + break; + case 247: + if (curChar == 33) + jjCheckNAddStates(116, 119); + break; + case 248: + if ((0x100003600L & l) != 0L) + jjCheckNAddTwoStates(248, 255); + break; + case 256: + if ((0x100003600L & l) != 0L) + jjCheckNAddTwoStates(256, 265); + break; + case 266: + if (curChar == 45) + jjAddStates(114, 115); + break; + case 270: + if (curChar == 46) + jjCheckNAddStates(94, 113); + break; + case 271: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 73) + kind = 73; + jjCheckNAdd(271); + break; + case 272: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(272, 273); + break; + case 273: + if (curChar == 37 && kind > 77) + kind = 77; + break; + case 274: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(274, 276); + break; + case 277: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(277, 279); + break; + case 280: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(280, 282); + break; + case 283: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(283, 285); + break; + case 286: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(286, 288); + break; + case 289: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(289, 291); + break; + case 292: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(292, 294); + break; + case 295: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(295, 298); + break; + case 299: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(299, 302); + break; + case 303: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(303, 305); + break; + case 306: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(306, 309); + break; + case 310: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(310, 313); + break; + case 314: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(314, 318); + break; + case 319: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(319, 321); + break; + case 322: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(322, 323); + break; + case 324: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(324, 326); + break; + case 327: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(327, 330); + break; + case 331: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(4, 8); + break; + case 332: + if (curChar == 45) + jjCheckNAdd(333); + break; + case 334: + if ((0x3ff200000000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddTwoStates(334, 335); + break; + case 336: + if ((0xffffffff00000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddTwoStates(334, 335); + break; + case 337: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(508, 511); + break; + case 338: + if ((0x100003600L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddTwoStates(334, 335); + break; + case 339: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(512, 518); + break; + case 340: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(519, 521); + break; + case 341: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(522, 525); + break; + case 342: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(526, 530); + break; + case 343: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(531, 536); + break; + case 346: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(537, 540); + break; + case 347: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(541, 547); + break; + case 348: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(548, 550); + break; + case 349: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(551, 554); + break; + case 350: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(555, 559); + break; + case 351: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(560, 565); + break; + case 353: + if (curChar == 40) + jjCheckNAddStates(566, 571); + break; + case 354: + if ((0xfffffc7a00000000L & l) != 0L) + jjCheckNAddStates(572, 575); + break; + case 355: + if ((0x100003600L & l) != 0L) + jjCheckNAddTwoStates(355, 356); + break; + case 356: + if (curChar == 41 && kind > 75) + kind = 75; + break; + case 358: + if ((0xffffffff00000000L & l) != 0L) + jjCheckNAddStates(572, 575); + break; + case 359: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(576, 580); + break; + case 360: + if ((0x100003600L & l) != 0L) + jjCheckNAddStates(572, 575); + break; + case 361: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(581, 588); + break; + case 362: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(589, 592); + break; + case 363: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(593, 597); + break; + case 364: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(598, 603); + break; + case 365: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(604, 610); + break; + case 366: + if (curChar == 39) + jjCheckNAddStates(611, 614); + break; + case 367: + if ((0xffffff7f00000200L & l) != 0L) + jjCheckNAddStates(611, 614); + break; + case 368: + if (curChar == 39) + jjCheckNAddTwoStates(355, 356); + break; + case 370: + if (curChar == 12) + jjCheckNAddStates(611, 614); + break; + case 372: + if ((0xffffffff00000000L & l) != 0L) + jjCheckNAddStates(611, 614); + break; + case 373: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(615, 620); + break; + case 374: + if ((0x100003600L & l) != 0L) + jjCheckNAddStates(611, 614); + break; + case 375: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(621, 629); + break; + case 376: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(630, 634); + break; + case 377: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(635, 640); + break; + case 378: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(641, 647); + break; + case 379: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(648, 655); + break; + case 380: + if (curChar == 13) + jjCheckNAddStates(611, 614); + break; + case 381: + if (curChar == 10) + jjCheckNAddStates(611, 614); + break; + case 382: + if (curChar == 13) + jjstateSet[jjnewStateCnt++] = 381; + break; + case 383: + if (curChar == 34) + jjCheckNAddStates(656, 659); + break; + case 384: + if ((0xfffffffb00000200L & l) != 0L) + jjCheckNAddStates(656, 659); + break; + case 385: + if (curChar == 34) + jjCheckNAddTwoStates(355, 356); + break; + case 387: + if (curChar == 12) + jjCheckNAddStates(656, 659); + break; + case 389: + if ((0xffffffff00000000L & l) != 0L) + jjCheckNAddStates(656, 659); + break; + case 390: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(660, 665); + break; + case 391: + if ((0x100003600L & l) != 0L) + jjCheckNAddStates(656, 659); + break; + case 392: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(666, 674); + break; + case 393: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(675, 679); + break; + case 394: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(680, 685); + break; + case 395: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(686, 692); + break; + case 396: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(693, 700); + break; + case 397: + if (curChar == 13) + jjCheckNAddStates(656, 659); + break; + case 398: + if (curChar == 10) + jjCheckNAddStates(656, 659); + break; + case 399: + if (curChar == 13) + jjstateSet[jjnewStateCnt++] = 398; + break; + case 400: + if ((0x100003600L & l) != 0L) + jjCheckNAddStates(701, 707); + break; + case 403: + if (curChar == 43) + jjAddStates(708, 709); + break; + case 404: + if (curChar != 63) + break; + if (kind > 114) + kind = 114; + jjstateSet[jjnewStateCnt++] = 405; + break; + case 405: + if (curChar != 63) + break; + if (kind > 114) + kind = 114; + jjCheckNAddStates(710, 713); + break; + case 406: + if (curChar == 63 && kind > 114) + kind = 114; + break; + case 407: + case 422: + case 426: + case 429: + case 432: + if (curChar != 63) + break; + if (kind > 114) + kind = 114; + jjCheckNAdd(406); + break; + case 408: + if (curChar != 63) + break; + if (kind > 114) + kind = 114; + jjCheckNAddTwoStates(406, 407); + break; + case 409: + if (curChar != 63) + break; + if (kind > 114) + kind = 114; + jjCheckNAddStates(714, 716); + break; + case 410: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjAddStates(717, 722); + break; + case 411: + if ((0x3ff000000000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 412; + break; + case 412: + if ((0x3ff000000000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 413; + break; + case 413: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAdd(414); + break; + case 414: + if ((0x3ff000000000000L & l) != 0L && kind > 114) + kind = 114; + break; + case 415: + if ((0x3ff000000000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 416; + break; + case 416: + if ((0x3ff000000000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 417; + break; + case 417: + if ((0x3ff000000000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 418; + break; + case 418: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjCheckNAdd(406); + break; + case 419: + if ((0x3ff000000000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 420; + break; + case 420: + if ((0x3ff000000000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 421; + break; + case 421: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjstateSet[jjnewStateCnt++] = 422; + break; + case 423: + if ((0x3ff000000000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 424; + break; + case 424: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjstateSet[jjnewStateCnt++] = 425; + break; + case 425: + if (curChar != 63) + break; + if (kind > 114) + kind = 114; + jjCheckNAddTwoStates(406, 426); + break; + case 427: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjstateSet[jjnewStateCnt++] = 428; + break; + case 428: + if (curChar != 63) + break; + if (kind > 114) + kind = 114; + jjCheckNAddStates(723, 725); + break; + case 430: + if (curChar != 63) + break; + if (kind > 114) + kind = 114; + jjCheckNAddTwoStates(406, 429); + break; + case 431: + if (curChar != 63) + break; + if (kind > 114) + kind = 114; + jjCheckNAddStates(726, 729); + break; + case 433: + if (curChar != 63) + break; + if (kind > 114) + kind = 114; + jjCheckNAddTwoStates(406, 432); + break; + case 434: + if (curChar != 63) + break; + if (kind > 114) + kind = 114; + jjCheckNAddStates(730, 732); + break; + case 435: + if (curChar == 43) + jjstateSet[jjnewStateCnt++] = 436; + break; + case 436: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(437, 443); + break; + case 437: + if (curChar == 45) + jjstateSet[jjnewStateCnt++] = 438; + break; + case 438: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjstateSet[jjnewStateCnt++] = 439; + break; + case 439: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjCheckNAddStates(733, 736); + break; + case 440: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjCheckNAdd(414); + break; + case 441: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjCheckNAddTwoStates(414, 440); + break; + case 442: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjCheckNAddStates(737, 739); + break; + case 443: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(740, 744); + break; + case 444: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAdd(437); + break; + case 445: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(444, 437); + break; + case 446: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(745, 747); + break; + case 447: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(748, 751); + break; + case 449: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(752, 755); + break; + case 450: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(756, 762); + break; + case 451: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(763, 765); + break; + case 452: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(766, 769); + break; + case 453: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(770, 774); + break; + case 454: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(775, 780); + break; + case 455: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(781, 785); + break; + case 456: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(786, 793); + break; + case 458: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(794, 798); + break; + case 459: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(799, 804); + break; + case 460: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(805, 811); + break; + case 461: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 73) + kind = 73; + jjCheckNAddStates(12, 93); + break; + case 462: + if ((0x3ff000000000000L & l) == 0L) + break; + if (kind > 73) + kind = 73; + jjCheckNAdd(462); + break; + case 463: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(463, 464); + break; + case 464: + if (curChar == 46) + jjCheckNAdd(271); + break; + case 465: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(465, 273); + break; + case 466: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(466, 467); + break; + case 467: + if (curChar == 46) + jjCheckNAdd(272); + break; + case 468: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(468, 276); + break; + case 469: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(469, 470); + break; + case 470: + if (curChar == 46) + jjCheckNAdd(274); + break; + case 471: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(471, 279); + break; + case 472: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(472, 473); + break; + case 473: + if (curChar == 46) + jjCheckNAdd(277); + break; + case 474: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(474, 282); + break; + case 475: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(475, 476); + break; + case 476: + if (curChar == 46) + jjCheckNAdd(280); + break; + case 477: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(477, 285); + break; + case 478: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(478, 479); + break; + case 479: + if (curChar == 46) + jjCheckNAdd(283); + break; + case 480: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(480, 288); + break; + case 481: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(481, 482); + break; + case 482: + if (curChar == 46) + jjCheckNAdd(286); + break; + case 483: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(483, 291); + break; + case 484: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(484, 485); + break; + case 485: + if (curChar == 46) + jjCheckNAdd(289); + break; + case 486: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(486, 294); + break; + case 487: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(487, 488); + break; + case 488: + if (curChar == 46) + jjCheckNAdd(292); + break; + case 489: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(489, 298); + break; + case 490: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(490, 491); + break; + case 491: + if (curChar == 46) + jjCheckNAdd(295); + break; + case 492: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(492, 302); + break; + case 493: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(493, 494); + break; + case 494: + if (curChar == 46) + jjCheckNAdd(299); + break; + case 495: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(495, 305); + break; + case 496: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(496, 497); + break; + case 497: + if (curChar == 46) + jjCheckNAdd(303); + break; + case 498: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(498, 309); + break; + case 499: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(499, 500); + break; + case 500: + if (curChar == 46) + jjCheckNAdd(306); + break; + case 501: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(501, 313); + break; + case 502: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(502, 503); + break; + case 503: + if (curChar == 46) + jjCheckNAdd(310); + break; + case 504: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(504, 318); + break; + case 505: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(505, 506); + break; + case 506: + if (curChar == 46) + jjCheckNAdd(314); + break; + case 507: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(507, 321); + break; + case 508: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(508, 509); + break; + case 509: + if (curChar == 46) + jjCheckNAdd(319); + break; + case 510: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(510, 323); + break; + case 511: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(511, 512); + break; + case 512: + if (curChar == 46) + jjCheckNAdd(322); + break; + case 513: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(513, 326); + break; + case 514: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(514, 515); + break; + case 515: + if (curChar == 46) + jjCheckNAdd(324); + break; + case 516: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(516, 330); + break; + case 517: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(517, 518); + break; + case 518: + if (curChar == 46) + jjCheckNAdd(327); + break; + case 519: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddStates(812, 816); + break; + case 520: + if ((0x3ff000000000000L & l) != 0L) + jjCheckNAddTwoStates(520, 521); + break; + case 521: + if (curChar == 46) + jjCheckNAdd(331); + break; + default : break; } - return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x1L); - case 72: - case 104: - if ((active0 & 0x1000000000000000L) != 0L) { - return jjStartNfaWithStates_0(4, 60, 525); + } while(i != startsAt); + } + else if (curChar < 128) + { + long l = 1L << (curChar & 077); + do + { + switch(jjstateSet[--i]) + { + case 524: + if ((0x20000000200L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 264; + else if ((0x1000000010L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 254; + break; + case 162: + if ((0x7fffffe87fffffeL & l) != 0L) + { + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + } + else if (curChar == 92) + jjCheckNAddTwoStates(111, 121); + if ((0x80000000800L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 161; + break; + case 29: + if ((0x7fffffe87fffffeL & l) != 0L) + jjCheckNAddStates(0, 3); + else if (curChar == 92) + jjCheckNAddTwoStates(227, 228); + if ((0x7fffffe87fffffeL & l) != 0L) + { + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + } + else if (curChar == 92) + jjCheckNAddTwoStates(239, 240); + if ((0x20000000200L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 28; + break; + case 171: + if ((0x7fffffe87fffffeL & l) != 0L) + { + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + } + else if (curChar == 92) + jjCheckNAddTwoStates(111, 112); + break; + case 525: + if ((0x7fffffe87fffffeL & l) != 0L) + { + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + } + else if (curChar == 92) + jjCheckNAddTwoStates(111, 112); + break; + case 38: + if ((0x7fffffe87fffffeL & l) != 0L) + jjCheckNAddStates(0, 3); + if ((0x7fffffe87fffffeL & l) != 0L) + { + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + } + if ((0x200000002000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 37; + break; + case 173: + if ((0x7fffffe87fffffeL & l) != 0L) + { + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + } + else if (curChar == 92) + jjCheckNAddTwoStates(111, 112); + if ((0x8000000080000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 211; + else if ((0x800000008000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 172; + break; + case 24: + if ((0x7fffffe87fffffeL & l) != 0L) + { + if (kind > 72) + kind = 72; + jjCheckNAddStates(817, 822); + } + else if (curChar == 92) + jjCheckNAddStates(823, 826); + else if (curChar == 64) + jjAddStates(827, 831); + if ((0x20000000200000L & l) != 0L) + jjAddStates(832, 834); + else if ((0x800000008L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 151; + else if ((0x200000002L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 141; + else if ((0x4000000040000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 133; + else if ((0x4000000040L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 29; + else if (curChar == 64) + jjAddStates(835, 838); + break; + case 172: + if ((0x7fffffe87fffffeL & l) != 0L) + { + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + } + else if (curChar == 92) + jjCheckNAddTwoStates(111, 112); + if ((0x400000004000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 171; + break; + case 170: + if ((0x7fffffe87fffffeL & l) != 0L) + { + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + } + else if (curChar == 92) + jjCheckNAddTwoStates(111, 112); + if ((0x80000000800L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 169; + break; + case 174: + if ((0x7fffffe87fffffeL & l) != 0L) + { + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + } + if ((0x200000002000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 212; + else if ((0x80000000800000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 200; + else if ((0x800000008000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 184; + if ((0x200000002000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 173; + break; + case 75: + if ((0x7fffffe87fffffeL & l) != 0L) + { + if (kind > 76) + kind = 76; + jjCheckNAddTwoStates(77, 78); + } + else if (curChar == 92) + jjCheckNAddTwoStates(79, 89); + break; + case 522: + if ((0x7fffffe87fffffeL & l) != 0L) + jjCheckNAddStates(0, 3); + else if (curChar == 92) + jjCheckNAddTwoStates(227, 228); + if ((0x7fffffe87fffffeL & l) != 0L) + { + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + } + else if (curChar == 92) + jjCheckNAddTwoStates(239, 240); + break; + case 1: + if (curChar == 123) + jjstateSet[jjnewStateCnt++] = 2; + break; + case 4: + case 5: + if ((0x7fffffe87fffffeL & l) != 0L) + jjCheckNAddStates(138, 140); + break; + case 6: + if (curChar == 125 && kind > 39) + kind = 39; + break; + case 7: + if (curChar == 92) + jjCheckNAddTwoStates(8, 9); + break; + case 8: + if ((0x7fffffffffffffffL & l) != 0L) + jjCheckNAddStates(138, 140); + break; + case 9: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(141, 145); + break; + case 11: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(146, 153); + break; + case 12: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(154, 157); + break; + case 13: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(158, 162); + break; + case 14: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(163, 168); + break; + case 15: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(169, 175); + break; + case 17: + if (curChar == 92) + jjCheckNAddTwoStates(8, 18); + break; + case 18: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(176, 180); + break; + case 19: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(181, 188); + break; + case 20: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(189, 192); + break; + case 21: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(193, 197); + break; + case 22: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(198, 203); + break; + case 23: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(204, 210); + break; + case 25: + if ((0x4000000040000L & l) != 0L && kind > 68) + kind = 68; + break; + case 26: + case 31: + if ((0x2000000020L & l) != 0L) + jjCheckNAdd(25); + break; + case 27: + if ((0x10000000100000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 26; + break; + case 28: + if ((0x100000001000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 27; + break; + case 30: + if ((0x4000000040L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 29; + break; + case 32: + if ((0x10000000100000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 31; + break; + case 33: + if ((0x100000001000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 32; + break; + case 34: + if ((0x20000000200L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 33; + break; + case 35: + if ((0x4000000040L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 34; + break; + case 37: + if ((0x8000000080000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 36; + break; + case 41: + case 46: + if ((0x7fffffffffffffffL & l) != 0L) + jjCheckNAddStates(130, 133); + break; + case 43: + if (curChar == 92) + jjAddStates(839, 842); + break; + case 45: + if (curChar == 92) + jjAddStates(843, 844); + break; + case 47: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(211, 216); + break; + case 49: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(217, 225); + break; + case 50: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(226, 230); + break; + case 51: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(231, 236); + break; + case 52: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(237, 243); + break; + case 53: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(244, 251); + break; + case 58: + case 63: + if ((0x7fffffffffffffffL & l) != 0L) + jjCheckNAddStates(126, 129); + break; + case 60: + if (curChar == 92) + jjAddStates(845, 848); + break; + case 62: + if (curChar == 92) + jjAddStates(849, 850); + break; + case 64: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(252, 257); + break; + case 66: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(258, 266); + break; + case 67: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(267, 271); + break; + case 68: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(272, 277); + break; + case 69: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(278, 284); + break; + case 70: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(285, 292); + break; + case 76: + case 77: + if ((0x7fffffe87fffffeL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddTwoStates(77, 78); + break; + case 78: + if (curChar == 92) + jjCheckNAddTwoStates(79, 80); + break; + case 79: + if ((0x7fffffffffffffffL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddTwoStates(77, 78); + break; + case 80: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(293, 296); + break; + case 82: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(297, 303); + break; + case 83: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(304, 306); + break; + case 84: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(307, 310); + break; + case 85: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(311, 315); + break; + case 86: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(316, 321); + break; + case 88: + if (curChar == 92) + jjCheckNAddTwoStates(79, 89); + break; + case 89: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(322, 325); + break; + case 90: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(326, 332); + break; + case 91: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(333, 335); + break; + case 92: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(336, 339); + break; + case 93: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(340, 344); + break; + case 94: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddStates(345, 350); + break; + case 96: + if ((0x7fffffe87fffffeL & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddTwoStates(96, 97); + break; + case 97: + if (curChar == 92) + jjAddStates(851, 852); + break; + case 98: + if ((0x7fffffffffffffffL & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddTwoStates(96, 97); + break; + case 99: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddStates(351, 354); + break; + case 101: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddStates(355, 361); + break; + case 102: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddStates(362, 364); + break; + case 103: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddStates(365, 368); + break; + case 104: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddStates(369, 373); + break; + case 105: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddStates(374, 379); + break; + case 106: + if (curChar == 64) + jjAddStates(835, 838); + break; + case 108: + if ((0x7fffffe87fffffeL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 109: + if ((0x7fffffe87fffffeL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 110: + if (curChar == 92) + jjCheckNAddTwoStates(111, 112); + break; + case 111: + if ((0x7fffffffffffffffL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 112: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(380, 383); + break; + case 114: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(384, 390); + break; + case 115: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(391, 393); + break; + case 116: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(394, 397); + break; + case 117: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(398, 402); + break; + case 118: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(403, 408); + break; + case 120: + if (curChar == 92) + jjCheckNAddTwoStates(111, 121); + break; + case 121: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(409, 412); + break; + case 122: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(413, 419); + break; + case 123: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(420, 422); + break; + case 124: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(423, 426); + break; + case 125: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(427, 431); + break; + case 126: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddStates(432, 437); + break; + case 127: + if ((0x2000000020L & l) != 0L) + jjAddStates(438, 439); + break; + case 130: + if ((0x40000000400000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 127; + break; + case 131: + if ((0x800000008000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 130; + break; + case 132: + if ((0x200000002000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 131; + break; + case 133: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 132; + break; + case 134: + if ((0x4000000040000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 133; + break; + case 135: + if ((0x1000000010L & l) != 0L) + jjAddStates(440, 441); + break; + case 138: + if ((0x400000004000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 135; + break; + case 139: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 138; + break; + case 140: + if ((0x1000000010000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 139; + break; + case 141: + if ((0x1000000010000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 140; + break; + case 142: + if ((0x200000002L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 141; + break; + case 143: + if ((0x8000000080000L & l) != 0L) + jjAddStates(442, 443); + break; + case 146: + if ((0x400000004000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 143; + break; + case 147: + if ((0x20000000200L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 146; + break; + case 148: + if ((0x200000002L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 147; + break; + case 149: + if ((0x10000000100000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 148; + break; + case 150: + if ((0x400000004000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 149; + break; + case 151: + if ((0x800000008000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 150; + break; + case 152: + if ((0x800000008L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 151; + break; + case 153: + if (curChar == 64) + jjAddStates(827, 831); + break; + case 154: + if ((0x8000000080000L & l) != 0L && kind > 102) + kind = 102; + break; + case 155: + case 163: + case 176: + case 187: + case 203: + if ((0x2000000020L & l) != 0L) + jjCheckNAdd(154); + break; + case 156: + if ((0x200000002000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 155; + break; + case 157: + if ((0x200000002L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 156; + break; + case 158: + if ((0x4000000040000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 157; + break; + case 159: + if ((0x4000000040L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 158; + break; + case 160: + if ((0x200000002000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 159; + break; + case 161: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 160; + break; + case 164: + if ((0x200000002000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 163; + break; + case 165: + if ((0x200000002L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 164; + break; + case 166: + if ((0x4000000040000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 165; + break; + case 167: + if ((0x4000000040L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 166; + break; + case 168: + if ((0x200000002000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 167; + break; + case 169: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 168; + break; + case 177: + if ((0x200000002000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 176; + break; + case 178: + if ((0x200000002L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 177; + break; + case 179: + if ((0x4000000040000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 178; + break; + case 180: + if ((0x4000000040L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 179; + break; + case 181: + if ((0x200000002000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 180; + break; + case 182: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 181; + break; + case 183: + if ((0x80000000800L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 182; + break; + case 185: + if ((0x800000008000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 184; + break; + case 188: + if ((0x200000002000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 187; + break; + case 189: + if ((0x200000002L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 188; + break; + case 190: + if ((0x4000000040000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 189; + break; + case 191: + if ((0x4000000040L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 190; + break; + case 192: + if ((0x200000002000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 191; + break; + case 193: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 192; + break; + case 194: + if ((0x80000000800L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 193; + break; + case 196: + if ((0x10000000100000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 195; + break; + case 197: + if ((0x20000000200L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 196; + break; + case 198: + if ((0x80000000800L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 197; + break; + case 199: + if ((0x400000004L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 198; + break; + case 200: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 199; + break; + case 201: + if ((0x80000000800000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 200; + break; + case 204: + if ((0x200000002000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 203; + break; + case 205: + if ((0x200000002L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 204; + break; + case 206: + if ((0x4000000040000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 205; + break; + case 207: + if ((0x4000000040L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 206; + break; + case 208: + if ((0x200000002000000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 207; + break; + case 209: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 208; + break; + case 210: + if ((0x80000000800L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 209; + break; + case 212: + if ((0x8000000080000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 211; + break; + case 213: + if ((0x200000002000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 212; + break; + case 217: + if (kind > 2) + kind = 2; + jjAddStates(9, 11); + break; + case 222: + if (kind > 3) + kind = 3; + break; + case 225: + if ((0x7fffffe87fffffeL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + break; + case 226: + if (curChar == 92) + jjCheckNAddTwoStates(227, 228); + break; + case 227: + if ((0x7fffffffffffffffL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + break; + case 228: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(444, 447); + break; + case 230: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(448, 454); + break; + case 231: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(455, 457); + break; + case 232: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(458, 461); + break; + case 233: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(462, 466); + break; + case 234: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(467, 472); + break; + case 235: + if ((0x7fffffe87fffffeL & l) != 0L) + jjCheckNAddStates(0, 3); + break; + case 238: + if (curChar == 92) + jjCheckNAddTwoStates(239, 240); + break; + case 239: + if ((0x7fffffffffffffffL & l) != 0L) + jjCheckNAddStates(0, 3); + break; + case 240: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(473, 477); + break; + case 242: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(478, 485); + break; + case 243: + case 457: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(486, 489); + break; + case 244: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(490, 494); + break; + case 245: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(495, 500); + break; + case 246: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(501, 507); + break; + case 249: + if ((0x10000000100000L & l) != 0L && kind > 70) + kind = 70; + break; + case 250: + if ((0x100000001000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 249; + break; + case 251: + if ((0x20000000200000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 250; + break; + case 252: + if ((0x200000002L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 251; + break; + case 253: + if ((0x4000000040L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 252; + break; + case 254: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 253; + break; + case 255: + if ((0x1000000010L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 254; + break; + case 257: + if ((0x10000000100000L & l) != 0L && kind > 104) + kind = 104; + break; + case 258: + if ((0x400000004000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 257; + break; + case 259: + if ((0x200000002L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 258; + break; + case 260: + if ((0x10000000100000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 259; + break; + case 261: + if ((0x4000000040000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 260; + break; + case 262: + if ((0x800000008000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 261; + break; + case 263: + if ((0x1000000010000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 262; + break; + case 264: + if ((0x200000002000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 263; + break; + case 265: + if ((0x20000000200L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 264; + break; + case 267: + if ((0x7fffffe87fffffeL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + break; + case 268: + if ((0x7fffffe87fffffeL & l) != 0L) + jjCheckNAddStates(0, 3); + break; + case 269: + if ((0x7fffffe87fffffeL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(817, 822); + break; + case 275: + if ((0x10000000100000L & l) != 0L && kind > 78) + kind = 78; + break; + case 276: + if ((0x1000000010000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 275; + break; + case 278: + if ((0x200000002000L & l) != 0L && kind > 79) + kind = 79; + break; + case 279: + if ((0x200000002000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 278; + break; + case 281: + if ((0x200000002000L & l) != 0L && kind > 80) + kind = 80; + break; + case 282: + if ((0x800000008L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 281; + break; + case 284: + if ((0x800000008L & l) != 0L && kind > 81) + kind = 81; + break; + case 285: + if ((0x1000000010000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 284; + break; + case 287: + if ((0x400000004000L & l) != 0L && kind > 82) + kind = 82; + break; + case 288: + if ((0x20000000200L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 287; + break; + case 290: + if ((0x100000001000000L & l) != 0L && kind > 83) + kind = 83; + break; + case 291: + if ((0x1000000010000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 290; + break; + case 293: + if ((0x200000002000L & l) != 0L && kind > 84) + kind = 84; + break; + case 294: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 293; + break; + case 296: + if ((0x200000002000L & l) != 0L && kind > 85) + kind = 85; + break; + case 297: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 296; + break; + case 298: + if ((0x100000001000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 297; + break; + case 300: + if ((0x200000002000L & l) != 0L && kind > 86) + kind = 86; + break; + case 301: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 300; + break; + case 302: + if ((0x4000000040000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 301; + break; + case 304: + if ((0x100000001000000L & l) != 0L && kind > 87) + kind = 87; + break; + case 305: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 304; + break; + case 307: + if ((0x8000000080L & l) != 0L && kind > 88) + kind = 88; + break; + case 308: + if ((0x2000000020L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 307; + break; + case 309: + if ((0x1000000010L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 308; + break; + case 311: + if ((0x1000000010L & l) != 0L && kind > 89) + kind = 89; + break; + case 312: + if ((0x200000002L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 311; + break; + case 313: + if ((0x4000000040000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 312; + break; + case 315: + if ((0x1000000010L & l) != 0L && kind > 90) + kind = 90; + break; + case 316: + if ((0x200000002L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 315; + break; + case 317: + if ((0x4000000040000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 316; + break; + case 318: + if ((0x8000000080L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 317; + break; + case 320: + if ((0x8000000080000L & l) != 0L && kind > 91) + kind = 91; + break; + case 321: + if ((0x200000002000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 320; + break; + case 323: + if ((0x8000000080000L & l) != 0L && kind > 92) + kind = 92; + break; + case 325: + if ((0x400000004000000L & l) != 0L && kind > 93) + kind = 93; + break; + case 326: + if ((0x10000000100L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 325; + break; + case 328: + if ((0x400000004000000L & l) != 0L && kind > 94) + kind = 94; + break; + case 329: + if ((0x10000000100L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 328; + break; + case 330: + if ((0x80000000800L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 329; + break; + case 333: + case 334: + if ((0x7fffffe87fffffeL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddTwoStates(334, 335); + break; + case 335: + if (curChar == 92) + jjCheckNAddTwoStates(336, 337); + break; + case 336: + if ((0x7fffffffffffffffL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddTwoStates(334, 335); + break; + case 337: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(508, 511); + break; + case 339: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(512, 518); + break; + case 340: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(519, 521); + break; + case 341: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(522, 525); + break; + case 342: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(526, 530); + break; + case 343: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(531, 536); + break; + case 345: + if (curChar == 92) + jjCheckNAddTwoStates(336, 346); + break; + case 346: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(537, 540); + break; + case 347: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(541, 547); + break; + case 348: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(548, 550); + break; + case 349: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(551, 554); + break; + case 350: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(555, 559); + break; + case 351: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddStates(560, 565); + break; + case 352: + if ((0x20000000200000L & l) != 0L) + jjAddStates(832, 834); + break; + case 354: + case 358: + if ((0x7fffffffffffffffL & l) != 0L) + jjCheckNAddStates(572, 575); + break; + case 357: + if (curChar == 92) + jjAddStates(853, 854); + break; + case 359: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(576, 580); + break; + case 361: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(581, 588); + break; + case 362: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(589, 592); + break; + case 363: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(593, 597); + break; + case 364: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(598, 603); + break; + case 365: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(604, 610); + break; + case 367: + case 372: + if ((0x7fffffffffffffffL & l) != 0L) + jjCheckNAddStates(611, 614); + break; + case 369: + if (curChar == 92) + jjAddStates(855, 858); + break; + case 371: + if (curChar == 92) + jjAddStates(859, 860); + break; + case 373: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(615, 620); + break; + case 375: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(621, 629); + break; + case 376: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(630, 634); + break; + case 377: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(635, 640); + break; + case 378: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(641, 647); + break; + case 379: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(648, 655); + break; + case 384: + case 389: + if ((0x7fffffffffffffffL & l) != 0L) + jjCheckNAddStates(656, 659); + break; + case 386: + if (curChar == 92) + jjAddStates(861, 864); + break; + case 388: + if (curChar == 92) + jjAddStates(865, 866); + break; + case 390: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(660, 665); + break; + case 392: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(666, 674); + break; + case 393: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(675, 679); + break; + case 394: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(680, 685); + break; + case 395: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(686, 692); + break; + case 396: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(693, 700); + break; + case 401: + if ((0x100000001000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 353; + break; + case 402: + if ((0x4000000040000L & l) != 0L) + jjstateSet[jjnewStateCnt++] = 401; + break; + case 410: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjAddStates(717, 722); + break; + case 411: + if ((0x7e0000007eL & l) != 0L) + jjstateSet[jjnewStateCnt++] = 412; + break; + case 412: + if ((0x7e0000007eL & l) != 0L) + jjstateSet[jjnewStateCnt++] = 413; + break; + case 413: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAdd(414); + break; + case 414: + if ((0x7e0000007eL & l) != 0L && kind > 114) + kind = 114; + break; + case 415: + if ((0x7e0000007eL & l) != 0L) + jjstateSet[jjnewStateCnt++] = 416; + break; + case 416: + if ((0x7e0000007eL & l) != 0L) + jjstateSet[jjnewStateCnt++] = 417; + break; + case 417: + if ((0x7e0000007eL & l) != 0L) + jjstateSet[jjnewStateCnt++] = 418; + break; + case 418: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjstateSet[jjnewStateCnt++] = 406; + break; + case 419: + if ((0x7e0000007eL & l) != 0L) + jjstateSet[jjnewStateCnt++] = 420; + break; + case 420: + if ((0x7e0000007eL & l) != 0L) + jjstateSet[jjnewStateCnt++] = 421; + break; + case 421: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjstateSet[jjnewStateCnt++] = 422; + break; + case 423: + if ((0x7e0000007eL & l) != 0L) + jjstateSet[jjnewStateCnt++] = 424; + break; + case 424: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjstateSet[jjnewStateCnt++] = 425; + break; + case 427: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjstateSet[jjnewStateCnt++] = 428; + break; + case 436: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddTwoStates(437, 443); + break; + case 438: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjstateSet[jjnewStateCnt++] = 439; + break; + case 439: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjCheckNAddStates(733, 736); + break; + case 440: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjCheckNAdd(414); + break; + case 441: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjCheckNAddTwoStates(414, 440); + break; + case 442: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 114) + kind = 114; + jjCheckNAddStates(737, 739); + break; + case 443: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(740, 744); + break; + case 444: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAdd(437); + break; + case 445: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddTwoStates(444, 437); + break; + case 446: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(745, 747); + break; + case 447: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(748, 751); + break; + case 448: + if (curChar == 92) + jjCheckNAddStates(823, 826); + break; + case 449: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(752, 755); + break; + case 450: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(756, 762); + break; + case 451: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(763, 765); + break; + case 452: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(766, 769); + break; + case 453: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(770, 774); + break; + case 454: + if ((0x7e0000007eL & l) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddStates(775, 780); + break; + case 455: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(781, 785); + break; + case 456: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(786, 793); + break; + case 458: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(794, 798); + break; + case 459: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(799, 804); + break; + case 460: + if ((0x7e0000007eL & l) != 0L) + jjCheckNAddStates(805, 811); + break; + default : break; } - break; - case 73: - case 105: - return jjMoveStringLiteralDfa5_0(active0, 0x20000000000000L, - active1, 0x400000000L); - case 76: - case 108: - return jjMoveStringLiteralDfa5_0(active0, 0x2040000000000000L, - active1, 0L); - case 78: - case 110: - if ((active0 & 0x400000000000000L) != 0L) { - return jjStartNfaWithStates_0(4, 58, 525); + } while(i != startsAt); + } + else + { + int i2 = (curChar & 0xff) >> 6; + long l2 = 1L << (curChar & 077); + do + { + switch(jjstateSet[--i]) + { + case 162: + case 111: + if ((jjbitVec0[i2] & l2) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 29: + if ((jjbitVec0[i2] & l2) != 0L) + { + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + } + if ((jjbitVec0[i2] & l2) != 0L) + jjCheckNAddStates(0, 3); + break; + case 171: + case 109: + if ((jjbitVec0[i2] & l2) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 525: + if ((jjbitVec0[i2] & l2) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 173: + if ((jjbitVec0[i2] & l2) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 24: + if ((jjbitVec0[i2] & l2) == 0L) + break; + if (kind > 40) + kind = 40; + jjCheckNAddStates(817, 822); + break; + case 172: + if ((jjbitVec0[i2] & l2) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 170: + if ((jjbitVec0[i2] & l2) == 0L) + break; + if (kind > 103) + kind = 103; + jjCheckNAddTwoStates(109, 110); + break; + case 75: + case 77: + case 79: + if ((jjbitVec0[i2] & l2) == 0L) + break; + if (kind > 76) + kind = 76; + jjCheckNAddTwoStates(77, 78); + break; + case 522: + if ((jjbitVec0[i2] & l2) != 0L) + { + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + } + if ((jjbitVec0[i2] & l2) != 0L) + jjCheckNAddStates(0, 3); + break; + case 5: + case 8: + case 16: + if ((jjbitVec0[i2] & l2) != 0L) + jjCheckNAddStates(138, 140); + break; + case 41: + case 46: + if ((jjbitVec0[i2] & l2) != 0L) + jjCheckNAddStates(130, 133); + break; + case 58: + case 63: + if ((jjbitVec0[i2] & l2) != 0L) + jjCheckNAddStates(126, 129); + break; + case 96: + case 98: + if ((jjbitVec0[i2] & l2) == 0L) + break; + if (kind > 96) + kind = 96; + jjCheckNAddTwoStates(96, 97); + break; + case 217: + if ((jjbitVec0[i2] & l2) == 0L) + break; + if (kind > 2) + kind = 2; + jjAddStates(9, 11); + break; + case 222: + if ((jjbitVec0[i2] & l2) != 0L && kind > 3) + kind = 3; + break; + case 225: + case 227: + if ((jjbitVec0[i2] & l2) == 0L) + break; + if (kind > 72) + kind = 72; + jjCheckNAddTwoStates(225, 226); + break; + case 235: + case 239: + if ((jjbitVec0[i2] & l2) != 0L) + jjCheckNAddStates(0, 3); + break; + case 334: + case 336: + case 344: + if ((jjbitVec0[i2] & l2) == 0L) + break; + if (kind > 95) + kind = 95; + jjCheckNAddTwoStates(334, 335); + break; + case 354: + case 358: + if ((jjbitVec0[i2] & l2) != 0L) + jjCheckNAddStates(572, 575); + break; + case 367: + case 372: + if ((jjbitVec0[i2] & l2) != 0L) + jjCheckNAddStates(611, 614); + break; + case 384: + case 389: + if ((jjbitVec0[i2] & l2) != 0L) + jjCheckNAddStates(656, 659); + break; + default : break; } - break; - case 79: - case 111: - return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x200000000L); - case 80: - case 112: - return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x4L); - case 82: - case 114: - return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x800000000L); - case 84: - case 116: - return jjMoveStringLiteralDfa5_0(active0, 0L, active1, - 0x2000000008L); - case 85: - case 117: - return jjMoveStringLiteralDfa5_0(active0, 0x304000000000000L, - active1, 0L); - case 90: - case 122: - return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x2L); - default: - break; - } - return jjStartNfa_0(3, active0, active1); - } + } while(i != startsAt); + } + if (kind != 0x7fffffff) + { + jjmatchedKind = kind; + jjmatchedPos = curPos; + kind = 0x7fffffff; + } + ++curPos; + if ((i = jjnewStateCnt) == (startsAt = 522 - (jjnewStateCnt = startsAt))) + return curPos; + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { return curPos; } + } +} +private int jjMoveStringLiteralDfa0_2() +{ + switch(curChar) + { + case 42: + return jjMoveStringLiteralDfa1_2(0x40L); + default : + return 1; + } +} +private int jjMoveStringLiteralDfa1_2(long active0) +{ + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + return 1; + } + switch(curChar) + { + case 47: + if ((active0 & 0x40L) != 0L) + return jjStopAtPos(1, 6); + break; + default : + return 2; + } + return 2; +} +private int jjMoveStringLiteralDfa0_1() +{ + switch(curChar) + { + case 42: + return jjMoveStringLiteralDfa1_1(0x20L); + default : + return 1; + } +} +private int jjMoveStringLiteralDfa1_1(long active0) +{ + try { curChar = input_stream.readChar(); } + catch(java.io.IOException e) { + return 1; + } + switch(curChar) + { + case 47: + if ((active0 & 0x20L) != 0L) + return jjStopAtPos(1, 5); + break; + default : + return 2; + } + return 2; +} +static final int[] jjnextStates = { + 235, 236, 237, 238, 331, 332, 333, 344, 345, 217, 218, 220, 462, 463, 464, 465, + 466, 467, 273, 468, 469, 470, 276, 471, 472, 473, 279, 474, 475, 476, 282, 477, + 478, 479, 285, 480, 481, 482, 288, 483, 484, 485, 291, 486, 487, 488, 294, 489, + 490, 491, 298, 492, 493, 494, 302, 495, 496, 497, 305, 498, 499, 500, 309, 501, + 502, 503, 313, 504, 505, 506, 318, 507, 508, 509, 321, 510, 511, 512, 323, 513, + 514, 515, 326, 516, 517, 518, 330, 519, 520, 521, 332, 333, 344, 345, 271, 272, + 274, 277, 280, 283, 286, 289, 292, 295, 299, 303, 306, 310, 314, 319, 322, 324, + 327, 331, 267, 268, 248, 255, 256, 265, 216, 223, 75, 76, 87, 88, 58, 59, + 60, 62, 41, 42, 43, 45, 3, 4, 16, 17, 5, 6, 7, 5, 10, 6, + 7, 11, 5, 12, 10, 6, 7, 13, 14, 15, 5, 10, 6, 7, 5, 12, + 10, 6, 7, 5, 12, 10, 6, 7, 13, 5, 12, 10, 6, 7, 13, 14, + 10, 5, 6, 7, 19, 20, 10, 5, 6, 7, 21, 22, 23, 10, 5, 6, + 7, 20, 10, 5, 6, 7, 20, 10, 5, 6, 7, 21, 20, 10, 5, 6, + 7, 21, 22, 41, 48, 42, 43, 45, 49, 41, 50, 48, 42, 43, 45, 51, + 52, 53, 41, 48, 42, 43, 45, 41, 50, 48, 42, 43, 45, 41, 50, 48, + 42, 43, 45, 51, 41, 50, 48, 42, 43, 45, 51, 52, 58, 65, 59, 60, + 62, 66, 58, 67, 65, 59, 60, 62, 68, 69, 70, 58, 65, 59, 60, 62, + 58, 67, 65, 59, 60, 62, 58, 67, 65, 59, 60, 62, 68, 58, 67, 65, + 59, 60, 62, 68, 69, 77, 81, 78, 82, 77, 83, 81, 78, 84, 85, 86, + 77, 81, 78, 77, 83, 81, 78, 77, 83, 81, 78, 84, 77, 83, 81, 78, + 84, 85, 81, 77, 78, 90, 91, 81, 77, 78, 92, 93, 94, 81, 77, 78, + 91, 81, 77, 78, 91, 81, 77, 78, 92, 91, 81, 77, 78, 92, 93, 96, + 100, 97, 101, 96, 102, 100, 97, 103, 104, 105, 96, 100, 97, 96, 102, 100, + 97, 96, 102, 100, 97, 103, 96, 102, 100, 97, 103, 104, 109, 113, 110, 114, + 109, 115, 113, 110, 116, 117, 118, 109, 113, 110, 109, 115, 113, 110, 109, 115, + 113, 110, 116, 109, 115, 113, 110, 116, 117, 113, 109, 110, 122, 123, 113, 109, + 110, 124, 125, 126, 113, 109, 110, 123, 113, 109, 110, 123, 113, 109, 110, 124, + 123, 113, 109, 110, 124, 125, 128, 129, 136, 137, 144, 145, 225, 229, 226, 230, + 225, 231, 229, 226, 232, 233, 234, 225, 229, 226, 225, 231, 229, 226, 225, 231, + 229, 226, 232, 225, 231, 229, 226, 232, 233, 235, 237, 238, 241, 242, 235, 243, + 237, 238, 241, 244, 245, 246, 235, 237, 238, 241, 235, 243, 237, 238, 241, 235, + 243, 237, 238, 241, 244, 235, 243, 237, 238, 241, 244, 245, 334, 338, 335, 339, + 334, 340, 338, 335, 341, 342, 343, 334, 338, 335, 334, 340, 338, 335, 334, 340, + 338, 335, 341, 334, 340, 338, 335, 341, 342, 338, 334, 335, 347, 348, 338, 334, + 335, 349, 350, 351, 338, 334, 335, 348, 338, 334, 335, 348, 338, 334, 335, 349, + 348, 338, 334, 335, 349, 350, 354, 366, 383, 356, 357, 400, 354, 355, 356, 357, + 354, 356, 357, 360, 361, 354, 362, 356, 357, 360, 363, 364, 365, 354, 356, 357, + 360, 354, 362, 356, 357, 360, 354, 362, 356, 357, 360, 363, 354, 362, 356, 357, + 360, 363, 364, 367, 368, 369, 371, 367, 374, 368, 369, 371, 375, 367, 376, 374, + 368, 369, 371, 377, 378, 379, 367, 374, 368, 369, 371, 367, 376, 374, 368, 369, + 371, 367, 376, 374, 368, 369, 371, 377, 367, 376, 374, 368, 369, 371, 377, 378, + 384, 385, 386, 388, 384, 391, 385, 386, 388, 392, 384, 393, 391, 385, 386, 388, + 394, 395, 396, 384, 391, 385, 386, 388, 384, 393, 391, 385, 386, 388, 384, 393, + 391, 385, 386, 388, 394, 384, 393, 391, 385, 386, 388, 394, 395, 354, 366, 383, + 355, 356, 357, 400, 404, 410, 406, 407, 408, 409, 406, 407, 408, 411, 415, 419, + 423, 427, 431, 406, 429, 430, 406, 432, 433, 434, 406, 432, 433, 414, 440, 441, + 442, 414, 440, 441, 444, 437, 445, 446, 447, 444, 437, 445, 444, 437, 445, 446, + 229, 225, 226, 450, 451, 229, 225, 226, 452, 453, 454, 229, 225, 226, 451, 229, + 225, 226, 451, 229, 225, 226, 452, 451, 229, 225, 226, 452, 453, 235, 237, 238, + 241, 456, 457, 235, 237, 238, 241, 458, 459, 460, 457, 235, 237, 238, 241, 457, + 235, 237, 238, 241, 458, 457, 235, 237, 238, 241, 458, 459, 519, 332, 333, 344, + 345, 225, 235, 236, 237, 238, 226, 227, 449, 239, 455, 162, 175, 186, 202, 214, + 402, 403, 435, 107, 108, 119, 120, 44, 54, 56, 55, 46, 47, 61, 71, 73, + 72, 63, 64, 98, 99, 358, 359, 370, 380, 382, 381, 372, 373, 387, 397, 399, + 398, 389, 390, +}; - private int jjMoveStringLiteralDfa5_0(long old0, long active0, long old1, - long active1) { - if (((active0 &= old0) | (active1 &= old1)) == 0L) { - return jjStartNfa_0(3, old0, old1); - } - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - jjStopStringLiteralDfa_0(4, active0, active1); - return 5; - } - switch (curChar) { - case 45: - return jjMoveStringLiteralDfa6_0(active0, 0L, active1, - 0x2000000002L); - case 65: - case 97: - if ((active1 & 0x400000000L) != 0L) { - return jjStartNfaWithStates_0(5, 98, 525); - } - break; - case 69: - case 101: - if ((active0 & 0x2000000000000000L) != 0L) { - return jjStartNfaWithStates_0(5, 61, 525); - } - return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x8L); - case 71: - case 103: - if ((active0 & 0x200000000000000L) != 0L) { - return jjStartNfaWithStates_0(5, 57, 525); - } - return jjMoveStringLiteralDfa6_0(active0, 0x4000000000000L, - active1, 0L); - case 78: - case 110: - if ((active0 & 0x20000000000000L) != 0L) { - return jjStartNfaWithStates_0(5, 53, 525); - } - return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x1L); - case 79: - case 111: - return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x4L); - case 82: - case 114: - return jjMoveStringLiteralDfa6_0(active0, 0x100000000000000L, - active1, 0x200000000L); - case 83: - case 115: - return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x800000000L); - case 84: - case 116: - return jjMoveStringLiteralDfa6_0(active0, 0x80000000000000L, - active1, 0L); - case 85: - case 117: - return jjMoveStringLiteralDfa6_0(active0, 0x40000000000000L, - active1, 0L); - default: - break; - } - return jjStartNfa_0(4, active0, active1); - } +/** Token literal values. */ +public static final String[] jjstrLiteralImages = { +"", null, null, null, null, null, null, null, "\74\41\55\55", "\55\55\76", +"\173", "\175", "\174\75", "\136\75", "\44\75", "\52\75", "\176\75", "\75", "\53", +"\55", "\54", "\73", "\76", "\176", "\74", "\57", "\133", "\135", "\52", "\45", +"\46", "\56", "\50", "\51", "\75\75", "\174\174", "\46\46", "\41\75", "\72", null, +null, null, null, null, null, null, null, null, null, null, null, null, null, null, +null, null, null, null, null, null, null, null, null, null, null, null, null, null, +null, null, null, null, null, null, null, null, null, null, null, null, null, null, +null, null, null, null, null, null, null, null, null, null, null, null, null, null, +null, null, null, null, null, null, null, null, null, null, null, null, null, null, +null, null, null, null, null, null, null, null, null, null, }; - private int jjMoveStringLiteralDfa6_0(long old0, long active0, long old1, - long active1) { - if (((active0 &= old0) | (active1 &= old1)) == 0L) { - return jjStartNfa_0(4, old0, old1); - } - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - jjStopStringLiteralDfa_0(5, active0, active1); - return 6; - } - switch (curChar) { - case 68: - case 100: - if ((active1 & 0x1L) != 0L) { - return jjStartNfaWithStates_0(6, 64, 525); - } - return jjMoveStringLiteralDfa7_0(active0, 0x40000000000000L, - active1, 0x2L); - case 69: - case 101: - return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x800000000L); - case 70: - case 102: - return jjMoveStringLiteralDfa7_0(active0, 0L, active1, - 0x2000000000L); - case 72: - case 104: - if ((active0 & 0x4000000000000L) != 0L) { - return jjStartNfaWithStates_0(6, 50, 522); - } - break; - case 73: - case 105: - return jjMoveStringLiteralDfa7_0(active0, 0x80000000000000L, - active1, 0L); - case 78: - case 110: - if ((active0 & 0x100000000000000L) != 0L) { - return jjStartNfaWithStates_0(6, 56, 525); - } - return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x8L); - case 82: - case 114: - return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x4L); - case 84: - case 116: - if ((active1 & 0x200000000L) != 0L) { - return jjStartNfaWithStates_0(6, 97, 525); - } - break; - default: - break; - } - return jjStartNfa_0(5, active0, active1); - } +/** Lexer state names. */ +public static final String[] lexStateNames = { + "DEFAULT", + "IN_FORMAL_COMMENT", + "IN_MULTI_LINE_COMMENT", +}; - private int jjMoveStringLiteralDfa7_0(long old0, long active0, long old1, - long active1) { - if (((active0 &= old0) | (active1 &= old1)) == 0L) { - return jjStartNfa_0(5, old0, old1); - } - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - jjStopStringLiteralDfa_0(6, active0, active1); - return 7; - } - switch (curChar) { - case 65: - case 97: - return jjMoveStringLiteralDfa8_0(active0, 0L, active1, - 0x2000000000L); - case 69: - case 101: - if ((active0 & 0x40000000000000L) != 0L) { - return jjStartNfaWithStates_0(7, 54, 525); - } - break; - case 79: - case 111: - return jjMoveStringLiteralDfa8_0(active0, 0x80000000000000L, - active1, 0x2L); - case 84: - case 116: - if ((active1 & 0x8L) != 0L) { - return jjStartNfaWithStates_0(7, 67, 525); - } else if ((active1 & 0x800000000L) != 0L) { - return jjStartNfaWithStates_0(7, 99, 525); - } - return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0x4L); - default: - break; - } - return jjStartNfa_0(6, active0, active1); - } +/** Lex State array. */ +public static final int[] jjnewLexState = { + -1, -1, -1, 1, 2, 0, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, +}; +static final long[] jjtoToken = { + 0xfffe01ffffffff03L, 0xfc01fffffffbffL, +}; +static final long[] jjtoSkip = { + 0x64L, 0x0L, +}; +static final long[] jjtoSpecial = { + 0x24L, 0x0L, +}; +static final long[] jjtoMore = { + 0x98L, 0x0L, +}; +protected CharStream input_stream; +private final int[] jjrounds = new int[522]; +private final int[] jjstateSet = new int[1044]; +private final StringBuilder jjimage = new StringBuilder(); +private StringBuilder image = jjimage; +private int jjimageLen; +private int lengthOfMatch; +protected char curChar; +/** Constructor. */ +public ParserTokenManager(CharStream stream){ + input_stream = stream; +} - private int jjMoveStringLiteralDfa8_0(long old0, long active0, long old1, - long active1) { - if (((active0 &= old0) | (active1 &= old1)) == 0L) { - return jjStartNfa_0(6, old0, old1); - } - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - jjStopStringLiteralDfa_0(7, active0, active1); - return 8; - } - switch (curChar) { - case 67: - case 99: - return jjMoveStringLiteralDfa9_0(active0, 0L, active1, - 0x2000000002L); - case 78: - case 110: - if ((active0 & 0x80000000000000L) != 0L) { - return jjStartNfaWithStates_0(8, 55, 525); - } - break; - case 83: - case 115: - if ((active1 & 0x4L) != 0L) { - return jjStartNfaWithStates_0(8, 66, 525); - } - break; - default: - break; - } - return jjStartNfa_0(7, active0, active1); - } +/** Constructor. */ +public ParserTokenManager(CharStream stream, int lexState){ + this(stream); + SwitchTo(lexState); +} - private int jjMoveStringLiteralDfa9_0(long old0, long active0, long old1, - long active1) { - if (((active0 &= old0) | (active1 &= old1)) == 0L) { - return jjStartNfa_0(7, old0, old1); - } - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - jjStopStringLiteralDfa_0(8, 0L, active1); - return 9; - } - switch (curChar) { - case 69: - case 101: - if ((active1 & 0x2000000000L) != 0L) { - return jjStartNfaWithStates_0(9, 101, 525); - } - break; - case 85: - case 117: - return jjMoveStringLiteralDfa10_0(active1, 0x2L); - default: - break; - } - return jjStartNfa_0(8, 0L, active1); - } +/** Reinitialise parser. */ +public void ReInit(CharStream stream) +{ + jjmatchedPos = jjnewStateCnt = 0; + curLexState = defaultLexState; + input_stream = stream; + ReInitRounds(); +} +private void ReInitRounds() +{ + int i; + jjround = 0x80000001; + for (i = 522; i-- > 0;) + jjrounds[i] = 0x80000000; +} - private int jjMoveStringLiteralDfa10_0(long old1, long active1) { - if (((active1 &= old1)) == 0L) { - return jjStartNfa_0(8, 0L, old1); - } - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - jjStopStringLiteralDfa_0(9, 0L, active1); - return 10; - } - switch (curChar) { - case 77: - case 109: - return jjMoveStringLiteralDfa11_0(active1, 0x2L); - default: - break; - } - return jjStartNfa_0(9, 0L, active1); - } +/** Reinitialise parser. */ +public void ReInit(CharStream stream, int lexState) +{ + ReInit(stream); + SwitchTo(lexState); +} - private int jjMoveStringLiteralDfa11_0(long old1, long active1) { - if (((active1 &= old1)) == 0L) { - return jjStartNfa_0(9, 0L, old1); - } - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - jjStopStringLiteralDfa_0(10, 0L, active1); - return 11; - } - switch (curChar) { - case 69: - case 101: - return jjMoveStringLiteralDfa12_0(active1, 0x2L); - default: - break; - } - return jjStartNfa_0(10, 0L, active1); - } +/** Switch to specified lex state. */ +public void SwitchTo(int lexState) +{ + if (lexState >= 3 || lexState < 0) + throw new TokenMgrError("Error: Ignoring invalid lexical state : " + lexState + ". State unchanged.", TokenMgrError.INVALID_LEXICAL_STATE); + else + curLexState = lexState; +} - private int jjMoveStringLiteralDfa12_0(long old1, long active1) { - if (((active1 &= old1)) == 0L) { - return jjStartNfa_0(10, 0L, old1); - } - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - jjStopStringLiteralDfa_0(11, 0L, active1); - return 12; - } - switch (curChar) { - case 78: - case 110: - return jjMoveStringLiteralDfa13_0(active1, 0x2L); - default: - break; - } - return jjStartNfa_0(11, 0L, active1); - } +protected Token jjFillToken() +{ + final Token t; + final String curTokenImage; + final int beginLine; + final int endLine; + final int beginColumn; + final int endColumn; + String im = jjstrLiteralImages[jjmatchedKind]; + curTokenImage = (im == null) ? input_stream.GetImage() : im; + beginLine = input_stream.getBeginLine(); + beginColumn = input_stream.getBeginColumn(); + endLine = input_stream.getEndLine(); + endColumn = input_stream.getEndColumn(); + t = Token.newToken(jjmatchedKind, curTokenImage); - private int jjMoveStringLiteralDfa13_0(long old1, long active1) { - if (((active1 &= old1)) == 0L) { - return jjStartNfa_0(11, 0L, old1); - } - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - jjStopStringLiteralDfa_0(12, 0L, active1); - return 13; - } - switch (curChar) { - case 84: - case 116: - if ((active1 & 0x2L) != 0L) { - return jjStartNfaWithStates_0(13, 65, 525); - } - break; - default: - break; - } - return jjStartNfa_0(12, 0L, active1); - } + t.beginLine = beginLine; + t.endLine = endLine; + t.beginColumn = beginColumn; + t.endColumn = endColumn; - private int jjStartNfaWithStates_0(int pos, int kind, int state) { - jjmatchedKind = kind; - jjmatchedPos = pos; - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - return pos + 1; - } - return jjMoveNfa_0(state, pos + 1); - } + return t; +} - static final long[] jjbitVec0 = { 0x0L, 0x0L, 0xffffffffffffffffL, - 0xffffffffffffffffL }; +int curLexState = 0; +int defaultLexState = 0; +int jjnewStateCnt; +int jjround; +int jjmatchedPos; +int jjmatchedKind; - private int jjMoveNfa_0(int startState, int curPos) { - int startsAt = 0; - jjnewStateCnt = 522; - int i = 1; - jjstateSet[0] = startState; - int kind = 0x7fffffff; - for (;;) { - if (++jjround == 0x7fffffff) { - ReInitRounds(); - } - if (curChar < 64) { - long l = 1L << curChar; - do { - switch (jjstateSet[--i]) { - case 524: - if ((0x100003600L & l) != 0L) { - jjCheckNAddTwoStates(256, 265); - } - if ((0x100003600L & l) != 0L) { - jjCheckNAddTwoStates(248, 255); - } - break; - case 162: - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 108; - } - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 213; - } - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 201; - } - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 185; - } - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 174; - } - break; - case 29: - if ((0x3ff200000000000L & l) != 0L) { - jjCheckNAddStates(0, 3); - } else if ((0x100003600L & l) != 0L) { - jjCheckNAddTwoStates(236, 237); - } else if (curChar == 40) { - if (kind > 118) { - kind = 118; - } - } - if ((0x3ff200000000000L & l) != 0L) { - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - } - break; - case 171: - if ((0x3ff200000000000L & l) != 0L) { - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - } - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 170; - } - break; - case 523: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(4, 8); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(327, 330); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(324, 326); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(322, 323); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(319, 321); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(314, 318); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(310, 313); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(306, 309); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(303, 305); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(299, 302); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(295, 298); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(292, 294); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(289, 291); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(286, 288); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(283, 285); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(280, 282); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(277, 279); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(274, 276); - } - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(272, 273); - } - if ((0x3ff000000000000L & l) != 0L) { - if (kind > 73) { - kind = 73; - } - jjCheckNAdd(271); - } - break; - case 525: - case 109: - if ((0x3ff200000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 216: - if (curChar == 42) { - jjstateSet[jjnewStateCnt++] = 221; - } else if (curChar == 47) { - if (kind > 2) { - kind = 2; - } - jjCheckNAddStates(9, 11); - } - break; - case 173: - if ((0x3ff200000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 24: - if ((0x3ff000000000000L & l) != 0L) { - if (kind > 73) { - kind = 73; - } - jjCheckNAddStates(12, 93); - } else if ((0x100003600L & l) != 0L) { - if (kind > 1) { - kind = 1; - } - jjCheckNAdd(0); - } else if (curChar == 46) { - jjCheckNAddStates(94, 113); - } else if (curChar == 45) { - jjAddStates(114, 115); - } else if (curChar == 33) { - jjCheckNAddStates(116, 119); - } else if (curChar == 47) { - jjAddStates(120, 121); - } else if (curChar == 35) { - jjCheckNAddTwoStates(96, 97); - } else if (curChar == 36) { - jjCheckNAddStates(122, 125); - } else if (curChar == 39) { - jjCheckNAddStates(126, 129); - } else if (curChar == 34) { - jjCheckNAddStates(130, 133); - } - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 38; - } else if (curChar == 35) { - jjstateSet[jjnewStateCnt++] = 1; - } - break; - case 172: - if ((0x3ff200000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 170: - if ((0x3ff200000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 75: - if (curChar == 45) { - jjCheckNAdd(76); - } - break; - case 522: - if ((0x3ff200000000000L & l) != 0L) { - jjCheckNAddStates(0, 3); - } else if ((0x100003600L & l) != 0L) { - jjCheckNAddTwoStates(236, 237); - } else if (curChar == 40) { - if (kind > 118) { - kind = 118; - } - } - if ((0x3ff200000000000L & l) != 0L) { - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - } - break; - case 0: - if ((0x100003600L & l) == 0L) { - break; - } - if (kind > 1) { - kind = 1; - } - jjCheckNAdd(0); - break; - case 2: - if (curChar == 36) { - jjCheckNAddStates(134, 137); - } - break; - case 3: - if (curChar == 45) { - jjCheckNAdd(4); - } - break; - case 5: - if ((0x3ff200000000000L & l) != 0L) { - jjCheckNAddStates(138, 140); - } - break; - case 8: - if ((0xffffffff00000000L & l) != 0L) { - jjCheckNAddStates(138, 140); - } - break; - case 9: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(141, 145); - } - break; - case 10: - if ((0x100003600L & l) != 0L) { - jjCheckNAddStates(138, 140); - } - break; - case 11: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(146, 153); - } - break; - case 12: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(154, 157); - } - break; - case 13: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(158, 162); - } - break; - case 14: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(163, 168); - } - break; - case 15: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(169, 175); - } - break; - case 18: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(176, 180); - } - break; - case 19: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(181, 188); - } - break; - case 20: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(189, 192); - } - break; - case 21: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(193, 197); - } - break; - case 22: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(198, 203); - } - break; - case 23: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(204, 210); - } - break; - case 36: - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 35; - } - break; - case 39: - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 38; - } - break; - case 40: - if (curChar == 34) { - jjCheckNAddStates(130, 133); - } - break; - case 41: - if ((0xfffffffb00000200L & l) != 0L) { - jjCheckNAddStates(130, 133); - } - break; - case 42: - if (curChar == 34 && kind > 71) { - kind = 71; - } - break; - case 44: - if (curChar == 12) { - jjCheckNAddStates(130, 133); - } - break; - case 46: - if ((0xffffffff00000000L & l) != 0L) { - jjCheckNAddStates(130, 133); - } - break; - case 47: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(211, 216); - } - break; - case 48: - if ((0x100003600L & l) != 0L) { - jjCheckNAddStates(130, 133); - } - break; - case 49: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(217, 225); - } - break; - case 50: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(226, 230); - } - break; - case 51: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(231, 236); - } - break; - case 52: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(237, 243); - } - break; - case 53: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(244, 251); - } - break; - case 54: - if (curChar == 13) { - jjCheckNAddStates(130, 133); - } - break; - case 55: - if (curChar == 10) { - jjCheckNAddStates(130, 133); - } - break; - case 56: - if (curChar == 13) { - jjstateSet[jjnewStateCnt++] = 55; - } - break; - case 57: - if (curChar == 39) { - jjCheckNAddStates(126, 129); - } - break; - case 58: - if ((0xffffff7f00000200L & l) != 0L) { - jjCheckNAddStates(126, 129); - } - break; - case 59: - if (curChar == 39 && kind > 71) { - kind = 71; - } - break; - case 61: - if (curChar == 12) { - jjCheckNAddStates(126, 129); - } - break; - case 63: - if ((0xffffffff00000000L & l) != 0L) { - jjCheckNAddStates(126, 129); - } - break; - case 64: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(252, 257); - } - break; - case 65: - if ((0x100003600L & l) != 0L) { - jjCheckNAddStates(126, 129); - } - break; - case 66: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(258, 266); - } - break; - case 67: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(267, 271); - } - break; - case 68: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(272, 277); - } - break; - case 69: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(278, 284); - } - break; - case 70: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(285, 292); - } - break; - case 71: - if (curChar == 13) { - jjCheckNAddStates(126, 129); - } - break; - case 72: - if (curChar == 10) { - jjCheckNAddStates(126, 129); - } - break; - case 73: - if (curChar == 13) { - jjstateSet[jjnewStateCnt++] = 72; - } - break; - case 74: - if (curChar == 36) { - jjCheckNAddStates(122, 125); - } - break; - case 77: - if ((0x3ff200000000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddTwoStates(77, 78); - break; - case 79: - if ((0xffffffff00000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddTwoStates(77, 78); - break; - case 80: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(293, 296); - break; - case 81: - if ((0x100003600L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddTwoStates(77, 78); - break; - case 82: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(297, 303); - break; - case 83: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(304, 306); - break; - case 84: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(307, 310); - break; - case 85: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(311, 315); - break; - case 86: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(316, 321); - break; - case 89: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(322, 325); - break; - case 90: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(326, 332); - break; - case 91: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(333, 335); - break; - case 92: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(336, 339); - break; - case 93: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(340, 344); - break; - case 94: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(345, 350); - break; - case 95: - if (curChar == 35) { - jjCheckNAddTwoStates(96, 97); - } - break; - case 96: - if ((0x3ff200000000000L & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddTwoStates(96, 97); - break; - case 98: - if ((0xffffffff00000000L & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddTwoStates(96, 97); - break; - case 99: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddStates(351, 354); - break; - case 100: - if ((0x100003600L & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddTwoStates(96, 97); - break; - case 101: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddStates(355, 361); - break; - case 102: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddStates(362, 364); - break; - case 103: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddStates(365, 368); - break; - case 104: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddStates(369, 373); - break; - case 105: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddStates(374, 379); - break; - case 107: - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 108; - } - break; - case 111: - if ((0xffffffff00000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 112: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(380, 383); - break; - case 113: - if ((0x100003600L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 114: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(384, 390); - break; - case 115: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(391, 393); - break; - case 116: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(394, 397); - break; - case 117: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(398, 402); - break; - case 118: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(403, 408); - break; - case 121: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(409, 412); - break; - case 122: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(413, 419); - break; - case 123: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(420, 422); - break; - case 124: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(423, 426); - break; - case 125: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(427, 431); - break; - case 126: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(432, 437); - break; - case 128: - if ((0x100003600L & l) != 0L) { - jjAddStates(438, 439); - } - break; - case 129: - if (curChar == 40 && kind > 115) { - kind = 115; - } - break; - case 136: - if ((0x100003600L & l) != 0L) { - jjAddStates(440, 441); - } - break; - case 137: - if (curChar == 40 && kind > 116) { - kind = 116; - } - break; - case 144: - if ((0x100003600L & l) != 0L) { - jjAddStates(442, 443); - } - break; - case 145: - if (curChar == 40 && kind > 117) { - kind = 117; - } - break; - case 175: - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 174; - } - break; - case 184: - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 183; - } - break; - case 186: - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 185; - } - break; - case 195: - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 194; - } - break; - case 202: - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 201; - } - break; - case 211: - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 210; - } - break; - case 214: - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 213; - } - break; - case 215: - if (curChar == 47) { - jjAddStates(120, 121); - } - break; - case 217: - if ((0xffffffffffffdbffL & l) == 0L) { - break; - } - if (kind > 2) { - kind = 2; - } - jjCheckNAddStates(9, 11); - break; - case 218: - if ((0x2400L & l) != 0L && kind > 2) { - kind = 2; - } - break; - case 219: - if (curChar == 10 && kind > 2) { - kind = 2; - } - break; - case 220: - if (curChar == 13) { - jjstateSet[jjnewStateCnt++] = 219; - } - break; - case 221: - if (curChar == 42) { - jjstateSet[jjnewStateCnt++] = 222; - } - break; - case 222: - if ((0xffff7fffffffffffL & l) != 0L && kind > 3) { - kind = 3; - } - break; - case 223: - if (curChar == 42) { - jjstateSet[jjnewStateCnt++] = 221; - } - break; - case 225: - if ((0x3ff200000000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - break; - case 227: - if ((0xffffffff00000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - break; - case 228: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(444, 447); - break; - case 229: - if ((0x100003600L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - break; - case 230: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(448, 454); - break; - case 231: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(455, 457); - break; - case 232: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(458, 461); - break; - case 233: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(462, 466); - break; - case 234: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(467, 472); - break; - case 235: - if ((0x3ff200000000000L & l) != 0L) { - jjCheckNAddStates(0, 3); - } - break; - case 236: - if ((0x100003600L & l) != 0L) { - jjCheckNAddTwoStates(236, 237); - } - break; - case 237: - if (curChar == 40 && kind > 118) { - kind = 118; - } - break; - case 239: - if ((0xffffffff00000000L & l) != 0L) { - jjCheckNAddStates(0, 3); - } - break; - case 240: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(473, 477); - } - break; - case 241: - if ((0x100003600L & l) != 0L) { - jjCheckNAddStates(0, 3); - } - break; - case 242: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(478, 485); - } - break; - case 243: - case 457: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(486, 489); - } - break; - case 244: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(490, 494); - } - break; - case 245: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(495, 500); - } - break; - case 246: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(501, 507); - } - break; - case 247: - if (curChar == 33) { - jjCheckNAddStates(116, 119); - } - break; - case 248: - if ((0x100003600L & l) != 0L) { - jjCheckNAddTwoStates(248, 255); - } - break; - case 256: - if ((0x100003600L & l) != 0L) { - jjCheckNAddTwoStates(256, 265); - } - break; - case 266: - if (curChar == 45) { - jjAddStates(114, 115); - } - break; - case 270: - if (curChar == 46) { - jjCheckNAddStates(94, 113); - } - break; - case 271: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 73) { - kind = 73; - } - jjCheckNAdd(271); - break; - case 272: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(272, 273); - } - break; - case 273: - if (curChar == 37 && kind > 77) { - kind = 77; - } - break; - case 274: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(274, 276); - } - break; - case 277: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(277, 279); - } - break; - case 280: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(280, 282); - } - break; - case 283: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(283, 285); - } - break; - case 286: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(286, 288); - } - break; - case 289: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(289, 291); - } - break; - case 292: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(292, 294); - } - break; - case 295: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(295, 298); - } - break; - case 299: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(299, 302); - } - break; - case 303: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(303, 305); - } - break; - case 306: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(306, 309); - } - break; - case 310: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(310, 313); - } - break; - case 314: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(314, 318); - } - break; - case 319: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(319, 321); - } - break; - case 322: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(322, 323); - } - break; - case 324: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(324, 326); - } - break; - case 327: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(327, 330); - } - break; - case 331: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(4, 8); - } - break; - case 332: - if (curChar == 45) { - jjCheckNAdd(333); - } - break; - case 334: - if ((0x3ff200000000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddTwoStates(334, 335); - break; - case 336: - if ((0xffffffff00000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddTwoStates(334, 335); - break; - case 337: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(508, 511); - break; - case 338: - if ((0x100003600L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddTwoStates(334, 335); - break; - case 339: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(512, 518); - break; - case 340: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(519, 521); - break; - case 341: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(522, 525); - break; - case 342: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(526, 530); - break; - case 343: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(531, 536); - break; - case 346: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(537, 540); - break; - case 347: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(541, 547); - break; - case 348: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(548, 550); - break; - case 349: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(551, 554); - break; - case 350: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(555, 559); - break; - case 351: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(560, 565); - break; - case 353: - if (curChar == 40) { - jjCheckNAddStates(566, 571); - } - break; - case 354: - if ((0xfffffc7a00000000L & l) != 0L) { - jjCheckNAddStates(572, 575); - } - break; - case 355: - if ((0x100003600L & l) != 0L) { - jjCheckNAddTwoStates(355, 356); - } - break; - case 356: - if (curChar == 41 && kind > 75) { - kind = 75; - } - break; - case 358: - if ((0xffffffff00000000L & l) != 0L) { - jjCheckNAddStates(572, 575); - } - break; - case 359: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(576, 580); - } - break; - case 360: - if ((0x100003600L & l) != 0L) { - jjCheckNAddStates(572, 575); - } - break; - case 361: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(581, 588); - } - break; - case 362: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(589, 592); - } - break; - case 363: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(593, 597); - } - break; - case 364: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(598, 603); - } - break; - case 365: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(604, 610); - } - break; - case 366: - if (curChar == 39) { - jjCheckNAddStates(611, 614); - } - break; - case 367: - if ((0xffffff7f00000200L & l) != 0L) { - jjCheckNAddStates(611, 614); - } - break; - case 368: - if (curChar == 39) { - jjCheckNAddTwoStates(355, 356); - } - break; - case 370: - if (curChar == 12) { - jjCheckNAddStates(611, 614); - } - break; - case 372: - if ((0xffffffff00000000L & l) != 0L) { - jjCheckNAddStates(611, 614); - } - break; - case 373: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(615, 620); - } - break; - case 374: - if ((0x100003600L & l) != 0L) { - jjCheckNAddStates(611, 614); - } - break; - case 375: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(621, 629); - } - break; - case 376: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(630, 634); - } - break; - case 377: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(635, 640); - } - break; - case 378: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(641, 647); - } - break; - case 379: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(648, 655); - } - break; - case 380: - if (curChar == 13) { - jjCheckNAddStates(611, 614); - } - break; - case 381: - if (curChar == 10) { - jjCheckNAddStates(611, 614); - } - break; - case 382: - if (curChar == 13) { - jjstateSet[jjnewStateCnt++] = 381; - } - break; - case 383: - if (curChar == 34) { - jjCheckNAddStates(656, 659); - } - break; - case 384: - if ((0xfffffffb00000200L & l) != 0L) { - jjCheckNAddStates(656, 659); - } - break; - case 385: - if (curChar == 34) { - jjCheckNAddTwoStates(355, 356); - } - break; - case 387: - if (curChar == 12) { - jjCheckNAddStates(656, 659); - } - break; - case 389: - if ((0xffffffff00000000L & l) != 0L) { - jjCheckNAddStates(656, 659); - } - break; - case 390: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(660, 665); - } - break; - case 391: - if ((0x100003600L & l) != 0L) { - jjCheckNAddStates(656, 659); - } - break; - case 392: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(666, 674); - } - break; - case 393: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(675, 679); - } - break; - case 394: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(680, 685); - } - break; - case 395: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(686, 692); - } - break; - case 396: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(693, 700); - } - break; - case 397: - if (curChar == 13) { - jjCheckNAddStates(656, 659); - } - break; - case 398: - if (curChar == 10) { - jjCheckNAddStates(656, 659); - } - break; - case 399: - if (curChar == 13) { - jjstateSet[jjnewStateCnt++] = 398; - } - break; - case 400: - if ((0x100003600L & l) != 0L) { - jjCheckNAddStates(701, 707); - } - break; - case 403: - if (curChar == 43) { - jjAddStates(708, 709); - } - break; - case 404: - if (curChar != 63) { - break; - } - if (kind > 114) { - kind = 114; - } - jjstateSet[jjnewStateCnt++] = 405; - break; - case 405: - if (curChar != 63) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddStates(710, 713); - break; - case 406: - if (curChar == 63 && kind > 114) { - kind = 114; - } - break; - case 407: - case 422: - case 426: - case 429: - case 432: - if (curChar != 63) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAdd(406); - break; - case 408: - if (curChar != 63) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddTwoStates(406, 407); - break; - case 409: - if (curChar != 63) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddStates(714, 716); - break; - case 410: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjAddStates(717, 722); - break; - case 411: - if ((0x3ff000000000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 412; - } - break; - case 412: - if ((0x3ff000000000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 413; - } - break; - case 413: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAdd(414); - } - break; - case 414: - if ((0x3ff000000000000L & l) != 0L && kind > 114) { - kind = 114; - } - break; - case 415: - if ((0x3ff000000000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 416; - } - break; - case 416: - if ((0x3ff000000000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 417; - } - break; - case 417: - if ((0x3ff000000000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 418; - } - break; - case 418: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAdd(406); - break; - case 419: - if ((0x3ff000000000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 420; - } - break; - case 420: - if ((0x3ff000000000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 421; - } - break; - case 421: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjstateSet[jjnewStateCnt++] = 422; - break; - case 423: - if ((0x3ff000000000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 424; - } - break; - case 424: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjstateSet[jjnewStateCnt++] = 425; - break; - case 425: - if (curChar != 63) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddTwoStates(406, 426); - break; - case 427: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjstateSet[jjnewStateCnt++] = 428; - break; - case 428: - if (curChar != 63) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddStates(723, 725); - break; - case 430: - if (curChar != 63) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddTwoStates(406, 429); - break; - case 431: - if (curChar != 63) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddStates(726, 729); - break; - case 433: - if (curChar != 63) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddTwoStates(406, 432); - break; - case 434: - if (curChar != 63) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddStates(730, 732); - break; - case 435: - if (curChar == 43) { - jjstateSet[jjnewStateCnt++] = 436; - } - break; - case 436: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(437, 443); - } - break; - case 437: - if (curChar == 45) { - jjstateSet[jjnewStateCnt++] = 438; - } - break; - case 438: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjstateSet[jjnewStateCnt++] = 439; - break; - case 439: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddStates(733, 736); - break; - case 440: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAdd(414); - break; - case 441: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddTwoStates(414, 440); - break; - case 442: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddStates(737, 739); - break; - case 443: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(740, 744); - } - break; - case 444: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAdd(437); - } - break; - case 445: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(444, 437); - } - break; - case 446: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(745, 747); - } - break; - case 447: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(748, 751); - } - break; - case 449: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(752, 755); - break; - case 450: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(756, 762); - break; - case 451: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(763, 765); - break; - case 452: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(766, 769); - break; - case 453: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(770, 774); - break; - case 454: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(775, 780); - break; - case 455: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(781, 785); - } - break; - case 456: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(786, 793); - } - break; - case 458: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(794, 798); - } - break; - case 459: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(799, 804); - } - break; - case 460: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(805, 811); - } - break; - case 461: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 73) { - kind = 73; - } - jjCheckNAddStates(12, 93); - break; - case 462: - if ((0x3ff000000000000L & l) == 0L) { - break; - } - if (kind > 73) { - kind = 73; - } - jjCheckNAdd(462); - break; - case 463: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(463, 464); - } - break; - case 464: - if (curChar == 46) { - jjCheckNAdd(271); - } - break; - case 465: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(465, 273); - } - break; - case 466: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(466, 467); - } - break; - case 467: - if (curChar == 46) { - jjCheckNAdd(272); - } - break; - case 468: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(468, 276); - } - break; - case 469: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(469, 470); - } - break; - case 470: - if (curChar == 46) { - jjCheckNAdd(274); - } - break; - case 471: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(471, 279); - } - break; - case 472: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(472, 473); - } - break; - case 473: - if (curChar == 46) { - jjCheckNAdd(277); - } - break; - case 474: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(474, 282); - } - break; - case 475: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(475, 476); - } - break; - case 476: - if (curChar == 46) { - jjCheckNAdd(280); - } - break; - case 477: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(477, 285); - } - break; - case 478: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(478, 479); - } - break; - case 479: - if (curChar == 46) { - jjCheckNAdd(283); - } - break; - case 480: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(480, 288); - } - break; - case 481: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(481, 482); - } - break; - case 482: - if (curChar == 46) { - jjCheckNAdd(286); - } - break; - case 483: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(483, 291); - } - break; - case 484: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(484, 485); - } - break; - case 485: - if (curChar == 46) { - jjCheckNAdd(289); - } - break; - case 486: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(486, 294); - } - break; - case 487: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(487, 488); - } - break; - case 488: - if (curChar == 46) { - jjCheckNAdd(292); - } - break; - case 489: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(489, 298); - } - break; - case 490: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(490, 491); - } - break; - case 491: - if (curChar == 46) { - jjCheckNAdd(295); - } - break; - case 492: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(492, 302); - } - break; - case 493: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(493, 494); - } - break; - case 494: - if (curChar == 46) { - jjCheckNAdd(299); - } - break; - case 495: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(495, 305); - } - break; - case 496: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(496, 497); - } - break; - case 497: - if (curChar == 46) { - jjCheckNAdd(303); - } - break; - case 498: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(498, 309); - } - break; - case 499: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(499, 500); - } - break; - case 500: - if (curChar == 46) { - jjCheckNAdd(306); - } - break; - case 501: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(501, 313); - } - break; - case 502: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(502, 503); - } - break; - case 503: - if (curChar == 46) { - jjCheckNAdd(310); - } - break; - case 504: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(504, 318); - } - break; - case 505: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(505, 506); - } - break; - case 506: - if (curChar == 46) { - jjCheckNAdd(314); - } - break; - case 507: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(507, 321); - } - break; - case 508: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(508, 509); - } - break; - case 509: - if (curChar == 46) { - jjCheckNAdd(319); - } - break; - case 510: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(510, 323); - } - break; - case 511: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(511, 512); - } - break; - case 512: - if (curChar == 46) { - jjCheckNAdd(322); - } - break; - case 513: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(513, 326); - } - break; - case 514: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(514, 515); - } - break; - case 515: - if (curChar == 46) { - jjCheckNAdd(324); - } - break; - case 516: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(516, 330); - } - break; - case 517: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(517, 518); - } - break; - case 518: - if (curChar == 46) { - jjCheckNAdd(327); - } - break; - case 519: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddStates(812, 816); - } - break; - case 520: - if ((0x3ff000000000000L & l) != 0L) { - jjCheckNAddTwoStates(520, 521); - } - break; - case 521: - if (curChar == 46) { - jjCheckNAdd(331); - } - break; - default: - break; - } - } while (i != startsAt); - } else if (curChar < 128) { - long l = 1L << (curChar & 077); - do { - switch (jjstateSet[--i]) { - case 524: - if ((0x20000000200L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 264; - } else if ((0x1000000010L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 254; - } - break; - case 162: - if ((0x7fffffe87fffffeL & l) != 0L) { - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - } else if (curChar == 92) { - jjCheckNAddTwoStates(111, 121); - } - if ((0x80000000800L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 161; - } - break; - case 29: - if ((0x7fffffe87fffffeL & l) != 0L) { - jjCheckNAddStates(0, 3); - } else if (curChar == 92) { - jjCheckNAddTwoStates(227, 228); - } - if ((0x7fffffe87fffffeL & l) != 0L) { - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - } else if (curChar == 92) { - jjCheckNAddTwoStates(239, 240); - } - if ((0x20000000200L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 28; - } - break; - case 171: - if ((0x7fffffe87fffffeL & l) != 0L) { - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - } else if (curChar == 92) { - jjCheckNAddTwoStates(111, 112); - } - break; - case 525: - if ((0x7fffffe87fffffeL & l) != 0L) { - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - } else if (curChar == 92) { - jjCheckNAddTwoStates(111, 112); - } - break; - case 38: - if ((0x7fffffe87fffffeL & l) != 0L) { - jjCheckNAddStates(0, 3); - } - if ((0x7fffffe87fffffeL & l) != 0L) { - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - } - if ((0x200000002000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 37; - } - break; - case 173: - if ((0x7fffffe87fffffeL & l) != 0L) { - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - } else if (curChar == 92) { - jjCheckNAddTwoStates(111, 112); - } - if ((0x8000000080000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 211; - } else if ((0x800000008000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 172; - } - break; - case 24: - if ((0x7fffffe87fffffeL & l) != 0L) { - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(817, 822); - } else if (curChar == 92) { - jjCheckNAddStates(823, 826); - } else if (curChar == 64) { - jjAddStates(827, 831); - } - if ((0x20000000200000L & l) != 0L) { - jjAddStates(832, 834); - } else if ((0x800000008L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 151; - } else if ((0x200000002L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 141; - } else if ((0x4000000040000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 133; - } else if ((0x4000000040L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 29; - } else if (curChar == 64) { - jjAddStates(835, 838); - } - break; - case 172: - if ((0x7fffffe87fffffeL & l) != 0L) { - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - } else if (curChar == 92) { - jjCheckNAddTwoStates(111, 112); - } - if ((0x400000004000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 171; - } - break; - case 170: - if ((0x7fffffe87fffffeL & l) != 0L) { - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - } else if (curChar == 92) { - jjCheckNAddTwoStates(111, 112); - } - if ((0x80000000800L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 169; - } - break; - case 174: - if ((0x7fffffe87fffffeL & l) != 0L) { - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - } - if ((0x200000002000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 212; - } else if ((0x80000000800000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 200; - } else if ((0x800000008000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 184; - } - if ((0x200000002000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 173; - } - break; - case 75: - if ((0x7fffffe87fffffeL & l) != 0L) { - if (kind > 76) { - kind = 76; - } - jjCheckNAddTwoStates(77, 78); - } else if (curChar == 92) { - jjCheckNAddTwoStates(79, 89); - } - break; - case 522: - if ((0x7fffffe87fffffeL & l) != 0L) { - jjCheckNAddStates(0, 3); - } else if (curChar == 92) { - jjCheckNAddTwoStates(227, 228); - } - if ((0x7fffffe87fffffeL & l) != 0L) { - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - } else if (curChar == 92) { - jjCheckNAddTwoStates(239, 240); - } - break; - case 1: - if (curChar == 123) { - jjstateSet[jjnewStateCnt++] = 2; - } - break; - case 4: - case 5: - if ((0x7fffffe87fffffeL & l) != 0L) { - jjCheckNAddStates(138, 140); - } - break; - case 6: - if (curChar == 125 && kind > 39) { - kind = 39; - } - break; - case 7: - if (curChar == 92) { - jjCheckNAddTwoStates(8, 9); - } - break; - case 8: - if ((0x7fffffffffffffffL & l) != 0L) { - jjCheckNAddStates(138, 140); - } - break; - case 9: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(141, 145); - } - break; - case 11: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(146, 153); - } - break; - case 12: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(154, 157); - } - break; - case 13: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(158, 162); - } - break; - case 14: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(163, 168); - } - break; - case 15: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(169, 175); - } - break; - case 17: - if (curChar == 92) { - jjCheckNAddTwoStates(8, 18); - } - break; - case 18: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(176, 180); - } - break; - case 19: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(181, 188); - } - break; - case 20: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(189, 192); - } - break; - case 21: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(193, 197); - } - break; - case 22: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(198, 203); - } - break; - case 23: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(204, 210); - } - break; - case 25: - if ((0x4000000040000L & l) != 0L && kind > 68) { - kind = 68; - } - break; - case 26: - case 31: - if ((0x2000000020L & l) != 0L) { - jjCheckNAdd(25); - } - break; - case 27: - if ((0x10000000100000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 26; - } - break; - case 28: - if ((0x100000001000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 27; - } - break; - case 30: - if ((0x4000000040L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 29; - } - break; - case 32: - if ((0x10000000100000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 31; - } - break; - case 33: - if ((0x100000001000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 32; - } - break; - case 34: - if ((0x20000000200L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 33; - } - break; - case 35: - if ((0x4000000040L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 34; - } - break; - case 37: - if ((0x8000000080000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 36; - } - break; - case 41: - case 46: - if ((0x7fffffffffffffffL & l) != 0L) { - jjCheckNAddStates(130, 133); - } - break; - case 43: - if (curChar == 92) { - jjAddStates(839, 842); - } - break; - case 45: - if (curChar == 92) { - jjAddStates(843, 844); - } - break; - case 47: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(211, 216); - } - break; - case 49: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(217, 225); - } - break; - case 50: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(226, 230); - } - break; - case 51: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(231, 236); - } - break; - case 52: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(237, 243); - } - break; - case 53: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(244, 251); - } - break; - case 58: - case 63: - if ((0x7fffffffffffffffL & l) != 0L) { - jjCheckNAddStates(126, 129); - } - break; - case 60: - if (curChar == 92) { - jjAddStates(845, 848); - } - break; - case 62: - if (curChar == 92) { - jjAddStates(849, 850); - } - break; - case 64: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(252, 257); - } - break; - case 66: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(258, 266); - } - break; - case 67: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(267, 271); - } - break; - case 68: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(272, 277); - } - break; - case 69: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(278, 284); - } - break; - case 70: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(285, 292); - } - break; - case 76: - case 77: - if ((0x7fffffe87fffffeL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddTwoStates(77, 78); - break; - case 78: - if (curChar == 92) { - jjCheckNAddTwoStates(79, 80); - } - break; - case 79: - if ((0x7fffffffffffffffL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddTwoStates(77, 78); - break; - case 80: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(293, 296); - break; - case 82: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(297, 303); - break; - case 83: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(304, 306); - break; - case 84: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(307, 310); - break; - case 85: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(311, 315); - break; - case 86: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(316, 321); - break; - case 88: - if (curChar == 92) { - jjCheckNAddTwoStates(79, 89); - } - break; - case 89: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(322, 325); - break; - case 90: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(326, 332); - break; - case 91: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(333, 335); - break; - case 92: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(336, 339); - break; - case 93: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(340, 344); - break; - case 94: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddStates(345, 350); - break; - case 96: - if ((0x7fffffe87fffffeL & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddTwoStates(96, 97); - break; - case 97: - if (curChar == 92) { - jjAddStates(851, 852); - } - break; - case 98: - if ((0x7fffffffffffffffL & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddTwoStates(96, 97); - break; - case 99: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddStates(351, 354); - break; - case 101: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddStates(355, 361); - break; - case 102: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddStates(362, 364); - break; - case 103: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddStates(365, 368); - break; - case 104: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddStates(369, 373); - break; - case 105: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddStates(374, 379); - break; - case 106: - if (curChar == 64) { - jjAddStates(835, 838); - } - break; - case 108: - if ((0x7fffffe87fffffeL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 109: - if ((0x7fffffe87fffffeL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 110: - if (curChar == 92) { - jjCheckNAddTwoStates(111, 112); - } - break; - case 111: - if ((0x7fffffffffffffffL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 112: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(380, 383); - break; - case 114: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(384, 390); - break; - case 115: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(391, 393); - break; - case 116: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(394, 397); - break; - case 117: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(398, 402); - break; - case 118: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(403, 408); - break; - case 120: - if (curChar == 92) { - jjCheckNAddTwoStates(111, 121); - } - break; - case 121: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(409, 412); - break; - case 122: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(413, 419); - break; - case 123: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(420, 422); - break; - case 124: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(423, 426); - break; - case 125: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(427, 431); - break; - case 126: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddStates(432, 437); - break; - case 127: - if ((0x2000000020L & l) != 0L) { - jjAddStates(438, 439); - } - break; - case 130: - if ((0x40000000400000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 127; - } - break; - case 131: - if ((0x800000008000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 130; - } - break; - case 132: - if ((0x200000002000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 131; - } - break; - case 133: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 132; - } - break; - case 134: - if ((0x4000000040000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 133; - } - break; - case 135: - if ((0x1000000010L & l) != 0L) { - jjAddStates(440, 441); - } - break; - case 138: - if ((0x400000004000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 135; - } - break; - case 139: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 138; - } - break; - case 140: - if ((0x1000000010000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 139; - } - break; - case 141: - if ((0x1000000010000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 140; - } - break; - case 142: - if ((0x200000002L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 141; - } - break; - case 143: - if ((0x8000000080000L & l) != 0L) { - jjAddStates(442, 443); - } - break; - case 146: - if ((0x400000004000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 143; - } - break; - case 147: - if ((0x20000000200L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 146; - } - break; - case 148: - if ((0x200000002L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 147; - } - break; - case 149: - if ((0x10000000100000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 148; - } - break; - case 150: - if ((0x400000004000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 149; - } - break; - case 151: - if ((0x800000008000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 150; - } - break; - case 152: - if ((0x800000008L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 151; - } - break; - case 153: - if (curChar == 64) { - jjAddStates(827, 831); - } - break; - case 154: - if ((0x8000000080000L & l) != 0L && kind > 102) { - kind = 102; - } - break; - case 155: - case 163: - case 176: - case 187: - case 203: - if ((0x2000000020L & l) != 0L) { - jjCheckNAdd(154); - } - break; - case 156: - if ((0x200000002000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 155; - } - break; - case 157: - if ((0x200000002L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 156; - } - break; - case 158: - if ((0x4000000040000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 157; - } - break; - case 159: - if ((0x4000000040L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 158; - } - break; - case 160: - if ((0x200000002000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 159; - } - break; - case 161: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 160; - } - break; - case 164: - if ((0x200000002000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 163; - } - break; - case 165: - if ((0x200000002L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 164; - } - break; - case 166: - if ((0x4000000040000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 165; - } - break; - case 167: - if ((0x4000000040L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 166; - } - break; - case 168: - if ((0x200000002000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 167; - } - break; - case 169: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 168; - } - break; - case 177: - if ((0x200000002000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 176; - } - break; - case 178: - if ((0x200000002L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 177; - } - break; - case 179: - if ((0x4000000040000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 178; - } - break; - case 180: - if ((0x4000000040L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 179; - } - break; - case 181: - if ((0x200000002000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 180; - } - break; - case 182: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 181; - } - break; - case 183: - if ((0x80000000800L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 182; - } - break; - case 185: - if ((0x800000008000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 184; - } - break; - case 188: - if ((0x200000002000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 187; - } - break; - case 189: - if ((0x200000002L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 188; - } - break; - case 190: - if ((0x4000000040000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 189; - } - break; - case 191: - if ((0x4000000040L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 190; - } - break; - case 192: - if ((0x200000002000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 191; - } - break; - case 193: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 192; - } - break; - case 194: - if ((0x80000000800L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 193; - } - break; - case 196: - if ((0x10000000100000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 195; - } - break; - case 197: - if ((0x20000000200L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 196; - } - break; - case 198: - if ((0x80000000800L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 197; - } - break; - case 199: - if ((0x400000004L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 198; - } - break; - case 200: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 199; - } - break; - case 201: - if ((0x80000000800000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 200; - } - break; - case 204: - if ((0x200000002000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 203; - } - break; - case 205: - if ((0x200000002L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 204; - } - break; - case 206: - if ((0x4000000040000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 205; - } - break; - case 207: - if ((0x4000000040L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 206; - } - break; - case 208: - if ((0x200000002000000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 207; - } - break; - case 209: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 208; - } - break; - case 210: - if ((0x80000000800L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 209; - } - break; - case 212: - if ((0x8000000080000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 211; - } - break; - case 213: - if ((0x200000002000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 212; - } - break; - case 217: - if (kind > 2) { - kind = 2; - } - jjAddStates(9, 11); - break; - case 222: - if (kind > 3) { - kind = 3; - } - break; - case 225: - if ((0x7fffffe87fffffeL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - break; - case 226: - if (curChar == 92) { - jjCheckNAddTwoStates(227, 228); - } - break; - case 227: - if ((0x7fffffffffffffffL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - break; - case 228: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(444, 447); - break; - case 230: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(448, 454); - break; - case 231: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(455, 457); - break; - case 232: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(458, 461); - break; - case 233: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(462, 466); - break; - case 234: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(467, 472); - break; - case 235: - if ((0x7fffffe87fffffeL & l) != 0L) { - jjCheckNAddStates(0, 3); - } - break; - case 238: - if (curChar == 92) { - jjCheckNAddTwoStates(239, 240); - } - break; - case 239: - if ((0x7fffffffffffffffL & l) != 0L) { - jjCheckNAddStates(0, 3); - } - break; - case 240: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(473, 477); - } - break; - case 242: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(478, 485); - } - break; - case 243: - case 457: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(486, 489); - } - break; - case 244: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(490, 494); - } - break; - case 245: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(495, 500); - } - break; - case 246: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(501, 507); - } - break; - case 249: - if ((0x10000000100000L & l) != 0L && kind > 70) { - kind = 70; - } - break; - case 250: - if ((0x100000001000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 249; - } - break; - case 251: - if ((0x20000000200000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 250; - } - break; - case 252: - if ((0x200000002L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 251; - } - break; - case 253: - if ((0x4000000040L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 252; - } - break; - case 254: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 253; - } - break; - case 255: - if ((0x1000000010L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 254; - } - break; - case 257: - if ((0x10000000100000L & l) != 0L && kind > 104) { - kind = 104; - } - break; - case 258: - if ((0x400000004000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 257; - } - break; - case 259: - if ((0x200000002L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 258; - } - break; - case 260: - if ((0x10000000100000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 259; - } - break; - case 261: - if ((0x4000000040000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 260; - } - break; - case 262: - if ((0x800000008000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 261; - } - break; - case 263: - if ((0x1000000010000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 262; - } - break; - case 264: - if ((0x200000002000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 263; - } - break; - case 265: - if ((0x20000000200L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 264; - } - break; - case 267: - if ((0x7fffffe87fffffeL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - break; - case 268: - if ((0x7fffffe87fffffeL & l) != 0L) { - jjCheckNAddStates(0, 3); - } - break; - case 269: - if ((0x7fffffe87fffffeL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(817, 822); - break; - case 275: - if ((0x10000000100000L & l) != 0L && kind > 78) { - kind = 78; - } - break; - case 276: - if ((0x1000000010000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 275; - } - break; - case 278: - if ((0x200000002000L & l) != 0L && kind > 79) { - kind = 79; - } - break; - case 279: - if ((0x200000002000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 278; - } - break; - case 281: - if ((0x200000002000L & l) != 0L && kind > 80) { - kind = 80; - } - break; - case 282: - if ((0x800000008L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 281; - } - break; - case 284: - if ((0x800000008L & l) != 0L && kind > 81) { - kind = 81; - } - break; - case 285: - if ((0x1000000010000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 284; - } - break; - case 287: - if ((0x400000004000L & l) != 0L && kind > 82) { - kind = 82; - } - break; - case 288: - if ((0x20000000200L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 287; - } - break; - case 290: - if ((0x100000001000000L & l) != 0L && kind > 83) { - kind = 83; - } - break; - case 291: - if ((0x1000000010000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 290; - } - break; - case 293: - if ((0x200000002000L & l) != 0L && kind > 84) { - kind = 84; - } - break; - case 294: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 293; - } - break; - case 296: - if ((0x200000002000L & l) != 0L && kind > 85) { - kind = 85; - } - break; - case 297: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 296; - } - break; - case 298: - if ((0x100000001000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 297; - } - break; - case 300: - if ((0x200000002000L & l) != 0L && kind > 86) { - kind = 86; - } - break; - case 301: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 300; - } - break; - case 302: - if ((0x4000000040000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 301; - } - break; - case 304: - if ((0x100000001000000L & l) != 0L && kind > 87) { - kind = 87; - } - break; - case 305: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 304; - } - break; - case 307: - if ((0x8000000080L & l) != 0L && kind > 88) { - kind = 88; - } - break; - case 308: - if ((0x2000000020L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 307; - } - break; - case 309: - if ((0x1000000010L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 308; - } - break; - case 311: - if ((0x1000000010L & l) != 0L && kind > 89) { - kind = 89; - } - break; - case 312: - if ((0x200000002L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 311; - } - break; - case 313: - if ((0x4000000040000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 312; - } - break; - case 315: - if ((0x1000000010L & l) != 0L && kind > 90) { - kind = 90; - } - break; - case 316: - if ((0x200000002L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 315; - } - break; - case 317: - if ((0x4000000040000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 316; - } - break; - case 318: - if ((0x8000000080L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 317; - } - break; - case 320: - if ((0x8000000080000L & l) != 0L && kind > 91) { - kind = 91; - } - break; - case 321: - if ((0x200000002000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 320; - } - break; - case 323: - if ((0x8000000080000L & l) != 0L && kind > 92) { - kind = 92; - } - break; - case 325: - if ((0x400000004000000L & l) != 0L && kind > 93) { - kind = 93; - } - break; - case 326: - if ((0x10000000100L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 325; - } - break; - case 328: - if ((0x400000004000000L & l) != 0L && kind > 94) { - kind = 94; - } - break; - case 329: - if ((0x10000000100L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 328; - } - break; - case 330: - if ((0x80000000800L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 329; - } - break; - case 333: - case 334: - if ((0x7fffffe87fffffeL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddTwoStates(334, 335); - break; - case 335: - if (curChar == 92) { - jjCheckNAddTwoStates(336, 337); - } - break; - case 336: - if ((0x7fffffffffffffffL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddTwoStates(334, 335); - break; - case 337: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(508, 511); - break; - case 339: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(512, 518); - break; - case 340: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(519, 521); - break; - case 341: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(522, 525); - break; - case 342: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(526, 530); - break; - case 343: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(531, 536); - break; - case 345: - if (curChar == 92) { - jjCheckNAddTwoStates(336, 346); - } - break; - case 346: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(537, 540); - break; - case 347: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(541, 547); - break; - case 348: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(548, 550); - break; - case 349: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(551, 554); - break; - case 350: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(555, 559); - break; - case 351: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddStates(560, 565); - break; - case 352: - if ((0x20000000200000L & l) != 0L) { - jjAddStates(832, 834); - } - break; - case 354: - case 358: - if ((0x7fffffffffffffffL & l) != 0L) { - jjCheckNAddStates(572, 575); - } - break; - case 357: - if (curChar == 92) { - jjAddStates(853, 854); - } - break; - case 359: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(576, 580); - } - break; - case 361: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(581, 588); - } - break; - case 362: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(589, 592); - } - break; - case 363: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(593, 597); - } - break; - case 364: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(598, 603); - } - break; - case 365: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(604, 610); - } - break; - case 367: - case 372: - if ((0x7fffffffffffffffL & l) != 0L) { - jjCheckNAddStates(611, 614); - } - break; - case 369: - if (curChar == 92) { - jjAddStates(855, 858); - } - break; - case 371: - if (curChar == 92) { - jjAddStates(859, 860); - } - break; - case 373: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(615, 620); - } - break; - case 375: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(621, 629); - } - break; - case 376: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(630, 634); - } - break; - case 377: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(635, 640); - } - break; - case 378: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(641, 647); - } - break; - case 379: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(648, 655); - } - break; - case 384: - case 389: - if ((0x7fffffffffffffffL & l) != 0L) { - jjCheckNAddStates(656, 659); - } - break; - case 386: - if (curChar == 92) { - jjAddStates(861, 864); - } - break; - case 388: - if (curChar == 92) { - jjAddStates(865, 866); - } - break; - case 390: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(660, 665); - } - break; - case 392: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(666, 674); - } - break; - case 393: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(675, 679); - } - break; - case 394: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(680, 685); - } - break; - case 395: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(686, 692); - } - break; - case 396: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(693, 700); - } - break; - case 401: - if ((0x100000001000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 353; - } - break; - case 402: - if ((0x4000000040000L & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 401; - } - break; - case 410: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjAddStates(717, 722); - break; - case 411: - if ((0x7e0000007eL & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 412; - } - break; - case 412: - if ((0x7e0000007eL & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 413; - } - break; - case 413: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAdd(414); - } - break; - case 414: - if ((0x7e0000007eL & l) != 0L && kind > 114) { - kind = 114; - } - break; - case 415: - if ((0x7e0000007eL & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 416; - } - break; - case 416: - if ((0x7e0000007eL & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 417; - } - break; - case 417: - if ((0x7e0000007eL & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 418; - } - break; - case 418: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjstateSet[jjnewStateCnt++] = 406; - break; - case 419: - if ((0x7e0000007eL & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 420; - } - break; - case 420: - if ((0x7e0000007eL & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 421; - } - break; - case 421: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjstateSet[jjnewStateCnt++] = 422; - break; - case 423: - if ((0x7e0000007eL & l) != 0L) { - jjstateSet[jjnewStateCnt++] = 424; - } - break; - case 424: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjstateSet[jjnewStateCnt++] = 425; - break; - case 427: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjstateSet[jjnewStateCnt++] = 428; - break; - case 436: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddTwoStates(437, 443); - } - break; - case 438: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjstateSet[jjnewStateCnt++] = 439; - break; - case 439: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddStates(733, 736); - break; - case 440: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAdd(414); - break; - case 441: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddTwoStates(414, 440); - break; - case 442: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 114) { - kind = 114; - } - jjCheckNAddStates(737, 739); - break; - case 443: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(740, 744); - } - break; - case 444: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAdd(437); - } - break; - case 445: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddTwoStates(444, 437); - } - break; - case 446: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(745, 747); - } - break; - case 447: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(748, 751); - } - break; - case 448: - if (curChar == 92) { - jjCheckNAddStates(823, 826); - } - break; - case 449: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(752, 755); - break; - case 450: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(756, 762); - break; - case 451: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(763, 765); - break; - case 452: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(766, 769); - break; - case 453: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(770, 774); - break; - case 454: - if ((0x7e0000007eL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddStates(775, 780); - break; - case 455: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(781, 785); - } - break; - case 456: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(786, 793); - } - break; - case 458: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(794, 798); - } - break; - case 459: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(799, 804); - } - break; - case 460: - if ((0x7e0000007eL & l) != 0L) { - jjCheckNAddStates(805, 811); - } - break; - default: - break; - } - } while (i != startsAt); - } else { - int i2 = (curChar & 0xff) >> 6; - long l2 = 1L << (curChar & 077); - do { - switch (jjstateSet[--i]) { - case 162: - case 111: - if ((jjbitVec0[i2] & l2) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 29: - if ((jjbitVec0[i2] & l2) != 0L) { - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - } - if ((jjbitVec0[i2] & l2) != 0L) { - jjCheckNAddStates(0, 3); - } - break; - case 171: - case 109: - if ((jjbitVec0[i2] & l2) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 525: - if ((jjbitVec0[i2] & l2) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 173: - if ((jjbitVec0[i2] & l2) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 24: - if ((jjbitVec0[i2] & l2) == 0L) { - break; - } - if (kind > 40) { - kind = 40; - } - jjCheckNAddStates(817, 822); - break; - case 172: - if ((jjbitVec0[i2] & l2) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 170: - if ((jjbitVec0[i2] & l2) == 0L) { - break; - } - if (kind > 103) { - kind = 103; - } - jjCheckNAddTwoStates(109, 110); - break; - case 75: - case 77: - case 79: - if ((jjbitVec0[i2] & l2) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddTwoStates(77, 78); - break; - case 522: - if ((jjbitVec0[i2] & l2) != 0L) { - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - } - if ((jjbitVec0[i2] & l2) != 0L) { - jjCheckNAddStates(0, 3); - } - break; - case 5: - case 8: - case 16: - if ((jjbitVec0[i2] & l2) != 0L) { - jjCheckNAddStates(138, 140); - } - break; - case 41: - case 46: - if ((jjbitVec0[i2] & l2) != 0L) { - jjCheckNAddStates(130, 133); - } - break; - case 58: - case 63: - if ((jjbitVec0[i2] & l2) != 0L) { - jjCheckNAddStates(126, 129); - } - break; - case 96: - case 98: - if ((jjbitVec0[i2] & l2) == 0L) { - break; - } - if (kind > 96) { - kind = 96; - } - jjCheckNAddTwoStates(96, 97); - break; - case 217: - if ((jjbitVec0[i2] & l2) == 0L) { - break; - } - if (kind > 2) { - kind = 2; - } - jjAddStates(9, 11); - break; - case 222: - if ((jjbitVec0[i2] & l2) != 0L && kind > 3) { - kind = 3; - } - break; - case 225: - case 227: - if ((jjbitVec0[i2] & l2) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - break; - case 235: - case 239: - if ((jjbitVec0[i2] & l2) != 0L) { - jjCheckNAddStates(0, 3); - } - break; - case 334: - case 336: - case 344: - if ((jjbitVec0[i2] & l2) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddTwoStates(334, 335); - break; - case 354: - case 358: - if ((jjbitVec0[i2] & l2) != 0L) { - jjCheckNAddStates(572, 575); - } - break; - case 367: - case 372: - if ((jjbitVec0[i2] & l2) != 0L) { - jjCheckNAddStates(611, 614); - } - break; - case 384: - case 389: - if ((jjbitVec0[i2] & l2) != 0L) { - jjCheckNAddStates(656, 659); - } - break; - default: - break; - } - } while (i != startsAt); - } - if (kind != 0x7fffffff) { - jjmatchedKind = kind; - jjmatchedPos = curPos; - kind = 0x7fffffff; - } - ++curPos; - if ((i = jjnewStateCnt) == (startsAt = 522 - (jjnewStateCnt = startsAt))) { - return curPos; - } - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - return curPos; - } - } - } +/** Get the next Token. */ +public Token getNextToken() +{ + Token specialToken = null; + Token matchedToken; + int curPos = 0; - private int jjMoveStringLiteralDfa0_2() { - switch (curChar) { - case 42: - return jjMoveStringLiteralDfa1_2(0x40L); - default: - return 1; - } - } + EOFLoop : + for (;;) + { + try + { + curChar = input_stream.BeginToken(); + } + catch(java.io.IOException e) + { + jjmatchedKind = 0; + matchedToken = jjFillToken(); + matchedToken.specialToken = specialToken; + return matchedToken; + } + image = jjimage; + image.setLength(0); + jjimageLen = 0; - private int jjMoveStringLiteralDfa1_2(long active0) { - try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - return 1; + for (;;) + { + switch(curLexState) + { + case 0: + jjmatchedKind = 0x7fffffff; + jjmatchedPos = 0; + curPos = jjMoveStringLiteralDfa0_0(); + if (jjmatchedPos == 0 && jjmatchedKind > 119) + { + jjmatchedKind = 119; + } + break; + case 1: + jjmatchedKind = 0x7fffffff; + jjmatchedPos = 0; + curPos = jjMoveStringLiteralDfa0_1(); + if (jjmatchedPos == 0 && jjmatchedKind > 7) + { + jjmatchedKind = 7; + } + break; + case 2: + jjmatchedKind = 0x7fffffff; + jjmatchedPos = 0; + curPos = jjMoveStringLiteralDfa0_2(); + if (jjmatchedPos == 0 && jjmatchedKind > 7) + { + jjmatchedKind = 7; + } + break; + } + if (jjmatchedKind != 0x7fffffff) + { + if (jjmatchedPos + 1 < curPos) + input_stream.backup(curPos - jjmatchedPos - 1); + if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) + { + matchedToken = jjFillToken(); + matchedToken.specialToken = specialToken; + TokenLexicalActions(matchedToken); + if (jjnewLexState[jjmatchedKind] != -1) + curLexState = jjnewLexState[jjmatchedKind]; + return matchedToken; } - switch (curChar) { - case 47: - if ((active0 & 0x40L) != 0L) { - return jjStopAtPos(1, 6); - } - break; - default: - return 2; + else if ((jjtoSkip[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) + { + if ((jjtoSpecial[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) + { + matchedToken = jjFillToken(); + if (specialToken == null) + specialToken = matchedToken; + else + { + matchedToken.specialToken = specialToken; + specialToken = (specialToken.next = matchedToken); + } + SkipLexicalActions(matchedToken); + } + else + SkipLexicalActions(null); + if (jjnewLexState[jjmatchedKind] != -1) + curLexState = jjnewLexState[jjmatchedKind]; + continue EOFLoop; } - return 2; - } - - private int jjMoveStringLiteralDfa0_1() { - switch (curChar) { - case 42: - return jjMoveStringLiteralDfa1_1(0x20L); - default: - return 1; - } - } - - private int jjMoveStringLiteralDfa1_1(long active0) { + MoreLexicalActions(); + if (jjnewLexState[jjmatchedKind] != -1) + curLexState = jjnewLexState[jjmatchedKind]; + curPos = 0; + jjmatchedKind = 0x7fffffff; try { - curChar = input_stream.readChar(); - } catch (java.io.IOException e) { - return 1; + curChar = input_stream.readChar(); + continue; } - switch (curChar) { - case 47: - if ((active0 & 0x20L) != 0L) { - return jjStopAtPos(1, 5); - } - break; - default: - return 2; + catch (java.io.IOException e1) { } + } + int error_line = input_stream.getEndLine(); + int error_column = input_stream.getEndColumn(); + String error_after = null; + boolean EOFSeen = false; + try { input_stream.readChar(); input_stream.backup(1); } + catch (java.io.IOException e1) { + EOFSeen = true; + error_after = curPos <= 1 ? "" : input_stream.GetImage(); + if (curChar == '\n' || curChar == '\r') { + error_line++; + error_column = 0; } - return 2; - } - - static final int[] jjnextStates = { 235, 236, 237, 238, 331, 332, 333, 344, - 345, 217, 218, 220, 462, 463, 464, 465, 466, 467, 273, 468, 469, - 470, 276, 471, 472, 473, 279, 474, 475, 476, 282, 477, 478, 479, - 285, 480, 481, 482, 288, 483, 484, 485, 291, 486, 487, 488, 294, - 489, 490, 491, 298, 492, 493, 494, 302, 495, 496, 497, 305, 498, - 499, 500, 309, 501, 502, 503, 313, 504, 505, 506, 318, 507, 508, - 509, 321, 510, 511, 512, 323, 513, 514, 515, 326, 516, 517, 518, - 330, 519, 520, 521, 332, 333, 344, 345, 271, 272, 274, 277, 280, - 283, 286, 289, 292, 295, 299, 303, 306, 310, 314, 319, 322, 324, - 327, 331, 267, 268, 248, 255, 256, 265, 216, 223, 75, 76, 87, 88, - 58, 59, 60, 62, 41, 42, 43, 45, 3, 4, 16, 17, 5, 6, 7, 5, 10, 6, 7, - 11, 5, 12, 10, 6, 7, 13, 14, 15, 5, 10, 6, 7, 5, 12, 10, 6, 7, 5, - 12, 10, 6, 7, 13, 5, 12, 10, 6, 7, 13, 14, 10, 5, 6, 7, 19, 20, 10, - 5, 6, 7, 21, 22, 23, 10, 5, 6, 7, 20, 10, 5, 6, 7, 20, 10, 5, 6, 7, - 21, 20, 10, 5, 6, 7, 21, 22, 41, 48, 42, 43, 45, 49, 41, 50, 48, - 42, 43, 45, 51, 52, 53, 41, 48, 42, 43, 45, 41, 50, 48, 42, 43, 45, - 41, 50, 48, 42, 43, 45, 51, 41, 50, 48, 42, 43, 45, 51, 52, 58, 65, - 59, 60, 62, 66, 58, 67, 65, 59, 60, 62, 68, 69, 70, 58, 65, 59, 60, - 62, 58, 67, 65, 59, 60, 62, 58, 67, 65, 59, 60, 62, 68, 58, 67, 65, - 59, 60, 62, 68, 69, 77, 81, 78, 82, 77, 83, 81, 78, 84, 85, 86, 77, - 81, 78, 77, 83, 81, 78, 77, 83, 81, 78, 84, 77, 83, 81, 78, 84, 85, - 81, 77, 78, 90, 91, 81, 77, 78, 92, 93, 94, 81, 77, 78, 91, 81, 77, - 78, 91, 81, 77, 78, 92, 91, 81, 77, 78, 92, 93, 96, 100, 97, 101, - 96, 102, 100, 97, 103, 104, 105, 96, 100, 97, 96, 102, 100, 97, 96, - 102, 100, 97, 103, 96, 102, 100, 97, 103, 104, 109, 113, 110, 114, - 109, 115, 113, 110, 116, 117, 118, 109, 113, 110, 109, 115, 113, - 110, 109, 115, 113, 110, 116, 109, 115, 113, 110, 116, 117, 113, - 109, 110, 122, 123, 113, 109, 110, 124, 125, 126, 113, 109, 110, - 123, 113, 109, 110, 123, 113, 109, 110, 124, 123, 113, 109, 110, - 124, 125, 128, 129, 136, 137, 144, 145, 225, 229, 226, 230, 225, - 231, 229, 226, 232, 233, 234, 225, 229, 226, 225, 231, 229, 226, - 225, 231, 229, 226, 232, 225, 231, 229, 226, 232, 233, 235, 237, - 238, 241, 242, 235, 243, 237, 238, 241, 244, 245, 246, 235, 237, - 238, 241, 235, 243, 237, 238, 241, 235, 243, 237, 238, 241, 244, - 235, 243, 237, 238, 241, 244, 245, 334, 338, 335, 339, 334, 340, - 338, 335, 341, 342, 343, 334, 338, 335, 334, 340, 338, 335, 334, - 340, 338, 335, 341, 334, 340, 338, 335, 341, 342, 338, 334, 335, - 347, 348, 338, 334, 335, 349, 350, 351, 338, 334, 335, 348, 338, - 334, 335, 348, 338, 334, 335, 349, 348, 338, 334, 335, 349, 350, - 354, 366, 383, 356, 357, 400, 354, 355, 356, 357, 354, 356, 357, - 360, 361, 354, 362, 356, 357, 360, 363, 364, 365, 354, 356, 357, - 360, 354, 362, 356, 357, 360, 354, 362, 356, 357, 360, 363, 354, - 362, 356, 357, 360, 363, 364, 367, 368, 369, 371, 367, 374, 368, - 369, 371, 375, 367, 376, 374, 368, 369, 371, 377, 378, 379, 367, - 374, 368, 369, 371, 367, 376, 374, 368, 369, 371, 367, 376, 374, - 368, 369, 371, 377, 367, 376, 374, 368, 369, 371, 377, 378, 384, - 385, 386, 388, 384, 391, 385, 386, 388, 392, 384, 393, 391, 385, - 386, 388, 394, 395, 396, 384, 391, 385, 386, 388, 384, 393, 391, - 385, 386, 388, 384, 393, 391, 385, 386, 388, 394, 384, 393, 391, - 385, 386, 388, 394, 395, 354, 366, 383, 355, 356, 357, 400, 404, - 410, 406, 407, 408, 409, 406, 407, 408, 411, 415, 419, 423, 427, - 431, 406, 429, 430, 406, 432, 433, 434, 406, 432, 433, 414, 440, - 441, 442, 414, 440, 441, 444, 437, 445, 446, 447, 444, 437, 445, - 444, 437, 445, 446, 229, 225, 226, 450, 451, 229, 225, 226, 452, - 453, 454, 229, 225, 226, 451, 229, 225, 226, 451, 229, 225, 226, - 452, 451, 229, 225, 226, 452, 453, 235, 237, 238, 241, 456, 457, - 235, 237, 238, 241, 458, 459, 460, 457, 235, 237, 238, 241, 457, - 235, 237, 238, 241, 458, 457, 235, 237, 238, 241, 458, 459, 519, - 332, 333, 344, 345, 225, 235, 236, 237, 238, 226, 227, 449, 239, - 455, 162, 175, 186, 202, 214, 402, 403, 435, 107, 108, 119, 120, - 44, 54, 56, 55, 46, 47, 61, 71, 73, 72, 63, 64, 98, 99, 358, 359, - 370, 380, 382, 381, 372, 373, 387, 397, 399, 398, 389, 390, }; - - /** Token literal values. */ - public static final String[] jjstrLiteralImages = { "", null, null, null, - null, null, null, null, "\74\41\55\55", "\55\55\76", "\173", - "\175", "\174\75", "\136\75", "\44\75", "\52\75", "\176\75", "\75", - "\53", "\55", "\54", "\73", "\76", "\176", "\74", "\57", "\133", - "\135", "\52", "\45", "\46", "\56", "\50", "\51", "\75\75", - "\174\174", "\46\46", "\41\75", "\72", null, null, null, null, - null, null, null, null, null, null, null, null, null, null, null, - null, null, null, null, null, null, null, null, null, null, null, - null, null, null, null, null, null, null, null, null, null, null, - null, null, null, null, null, null, null, null, null, null, null, - null, null, null, null, null, null, null, null, null, null, null, - null, null, null, null, null, null, null, null, null, null, null, - null, null, null, null, null, null, null, null, null, null, null, }; - - /** Lexer state names. */ - public static final String[] lexStateNames = { "DEFAULT", - "IN_FORMAL_COMMENT", "IN_MULTI_LINE_COMMENT", }; - - /** Lex State array. */ - public static final int[] jjnewLexState = { -1, -1, -1, 1, 2, 0, 0, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, }; - static final long[] jjtoToken = { 0xfffe01ffffffff03L, 0xfc01fffffffbffL, }; - static final long[] jjtoSkip = { 0x64L, 0x0L, }; - static final long[] jjtoSpecial = { 0x24L, 0x0L, }; - static final long[] jjtoMore = { 0x98L, 0x0L, }; - protected CharStream input_stream; - private final int[] jjrounds = new int[522]; - private final int[] jjstateSet = new int[1044]; - private final StringBuilder jjimage = new StringBuilder(); - private StringBuilder image = jjimage; - private int jjimageLen; - private int lengthOfMatch; - protected char curChar; - - /** Constructor. */ - public ParserTokenManager(CharStream stream) { - input_stream = stream; - } - - /** Constructor. */ - public ParserTokenManager(CharStream stream, int lexState) { - this(stream); - SwitchTo(lexState); - } - - /** Reinitialise parser. */ - public void ReInit(CharStream stream) { - jjmatchedPos = jjnewStateCnt = 0; - curLexState = defaultLexState; - input_stream = stream; - ReInitRounds(); - } - - private void ReInitRounds() { - int i; - jjround = 0x80000001; - for (i = 522; i-- > 0;) { - jjrounds[i] = 0x80000000; - } - } - - /** Reinitialise parser. */ - public void ReInit(CharStream stream, int lexState) { - ReInit(stream); - SwitchTo(lexState); - } - - /** Switch to specified lex state. */ - public void SwitchTo(int lexState) { - if (lexState >= 3 || lexState < 0) { - throw new TokenMgrError("Error: Ignoring invalid lexical state : " - + lexState + ". State unchanged.", - TokenMgrError.INVALID_LEXICAL_STATE); - } else { - curLexState = lexState; - } - } - - protected Token jjFillToken() { - final Token t; - final String curTokenImage; - final int beginLine; - final int endLine; - final int beginColumn; - final int endColumn; - String im = jjstrLiteralImages[jjmatchedKind]; - curTokenImage = (im == null) ? input_stream.GetImage() : im; - beginLine = input_stream.getBeginLine(); - beginColumn = input_stream.getBeginColumn(); - endLine = input_stream.getEndLine(); - endColumn = input_stream.getEndColumn(); - t = Token.newToken(jjmatchedKind, curTokenImage); - - t.beginLine = beginLine; - t.endLine = endLine; - t.beginColumn = beginColumn; - t.endColumn = endColumn; - - return t; - } - - int curLexState = 0; - int defaultLexState = 0; - int jjnewStateCnt; - int jjround; - int jjmatchedPos; - int jjmatchedKind; - - /** Get the next Token. */ - public Token getNextToken() { - Token specialToken = null; - Token matchedToken; - int curPos = 0; - - EOFLoop: for (;;) { - try { - curChar = input_stream.BeginToken(); - } catch (java.io.IOException e) { - jjmatchedKind = 0; - matchedToken = jjFillToken(); - matchedToken.specialToken = specialToken; - return matchedToken; - } - image = jjimage; - image.setLength(0); - jjimageLen = 0; - - for (;;) { - switch (curLexState) { - case 0: - jjmatchedKind = 0x7fffffff; - jjmatchedPos = 0; - curPos = jjMoveStringLiteralDfa0_0(); - if (jjmatchedPos == 0 && jjmatchedKind > 119) { - jjmatchedKind = 119; - } - break; - case 1: - jjmatchedKind = 0x7fffffff; - jjmatchedPos = 0; - curPos = jjMoveStringLiteralDfa0_1(); - if (jjmatchedPos == 0 && jjmatchedKind > 7) { - jjmatchedKind = 7; - } - break; - case 2: - jjmatchedKind = 0x7fffffff; - jjmatchedPos = 0; - curPos = jjMoveStringLiteralDfa0_2(); - if (jjmatchedPos == 0 && jjmatchedKind > 7) { - jjmatchedKind = 7; - } - break; - } - if (jjmatchedKind != 0x7fffffff) { - if (jjmatchedPos + 1 < curPos) { - input_stream.backup(curPos - jjmatchedPos - 1); - } - if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) { - matchedToken = jjFillToken(); - matchedToken.specialToken = specialToken; - TokenLexicalActions(matchedToken); - if (jjnewLexState[jjmatchedKind] != -1) { - curLexState = jjnewLexState[jjmatchedKind]; - } - return matchedToken; - } else if ((jjtoSkip[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) { - if ((jjtoSpecial[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) { - matchedToken = jjFillToken(); - if (specialToken == null) { - specialToken = matchedToken; - } else { - matchedToken.specialToken = specialToken; - specialToken = (specialToken.next = matchedToken); - } - SkipLexicalActions(matchedToken); - } else { - SkipLexicalActions(null); - } - if (jjnewLexState[jjmatchedKind] != -1) { - curLexState = jjnewLexState[jjmatchedKind]; - } - continue EOFLoop; - } - MoreLexicalActions(); - if (jjnewLexState[jjmatchedKind] != -1) { - curLexState = jjnewLexState[jjmatchedKind]; - } - curPos = 0; - jjmatchedKind = 0x7fffffff; - try { - curChar = input_stream.readChar(); - continue; - } catch (java.io.IOException e1) { - } - } - int error_line = input_stream.getEndLine(); - int error_column = input_stream.getEndColumn(); - String error_after = null; - boolean EOFSeen = false; - try { - input_stream.readChar(); - input_stream.backup(1); - } catch (java.io.IOException e1) { - EOFSeen = true; - error_after = curPos <= 1 ? "" : input_stream.GetImage(); - if (curChar == '\n' || curChar == '\r') { - error_line++; - error_column = 0; - } else { - error_column++; - } - } - if (!EOFSeen) { - input_stream.backup(1); - error_after = curPos <= 1 ? "" : input_stream.GetImage(); - } - throw new TokenMgrError(EOFSeen, curLexState, error_line, - error_column, error_after, curChar, - TokenMgrError.LEXICAL_ERROR); - } - } - } - - void SkipLexicalActions(Token matchedToken) { - switch (jjmatchedKind) { - default: - break; - } - } - - void MoreLexicalActions() { - jjimageLen += (lengthOfMatch = jjmatchedPos + 1); - switch (jjmatchedKind) { - case 3: - image.append(input_stream.GetSuffix(jjimageLen)); - jjimageLen = 0; - input_stream.backup(1); - break; - default: - break; - } - } - - void TokenLexicalActions(Token matchedToken) { - switch (jjmatchedKind) { - case 1: - image.append(input_stream.GetSuffix(jjimageLen - + (lengthOfMatch = jjmatchedPos + 1))); - image = Parser.SPACE; - break; - default: - break; - } - } - - private void jjCheckNAdd(int state) { - if (jjrounds[state] != jjround) { - jjstateSet[jjnewStateCnt++] = state; - jjrounds[state] = jjround; - } - } - - private void jjAddStates(int start, int end) { - do { - jjstateSet[jjnewStateCnt++] = jjnextStates[start]; - } while (start++ != end); - } + else + error_column++; + } + if (!EOFSeen) { + input_stream.backup(1); + error_after = curPos <= 1 ? "" : input_stream.GetImage(); + } + throw new TokenMgrError(EOFSeen, curLexState, error_line, error_column, error_after, curChar, TokenMgrError.LEXICAL_ERROR); + } + } +} - private void jjCheckNAddTwoStates(int state1, int state2) { - jjCheckNAdd(state1); - jjCheckNAdd(state2); - } +void SkipLexicalActions(Token matchedToken) +{ + switch(jjmatchedKind) + { + default : + break; + } +} +void MoreLexicalActions() +{ + jjimageLen += (lengthOfMatch = jjmatchedPos + 1); + switch(jjmatchedKind) + { + case 3 : + image.append(input_stream.GetSuffix(jjimageLen)); + jjimageLen = 0; + input_stream.backup(1); + break; + default : + break; + } +} +void TokenLexicalActions(Token matchedToken) +{ + switch(jjmatchedKind) + { + case 1 : + image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1))); + image = Parser.SPACE; + break; + default : + break; + } +} +private void jjCheckNAdd(int state) +{ + if (jjrounds[state] != jjround) + { + jjstateSet[jjnewStateCnt++] = state; + jjrounds[state] = jjround; + } +} +private void jjAddStates(int start, int end) +{ + do { + jjstateSet[jjnewStateCnt++] = jjnextStates[start]; + } while (start++ != end); +} +private void jjCheckNAddTwoStates(int state1, int state2) +{ + jjCheckNAdd(state1); + jjCheckNAdd(state2); +} - private void jjCheckNAddStates(int start, int end) { - do { - jjCheckNAdd(jjnextStates[start]); - } while (start++ != end); - } +private void jjCheckNAddStates(int start, int end) +{ + do { + jjCheckNAdd(jjnextStates[start]); + } while (start++ != end); +} } diff --git a/theme-compiler/src/com/vaadin/sass/internal/tree/BlockNode.java b/theme-compiler/src/com/vaadin/sass/internal/tree/BlockNode.java index 4b364168cf..6ce67a3abd 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/tree/BlockNode.java +++ b/theme-compiler/src/com/vaadin/sass/internal/tree/BlockNode.java @@ -80,7 +80,8 @@ public class BlockNode extends Node implements IVariableNode { String interpolation = "#{$" + var.getName() + "}"; if (selector.contains(interpolation)) { String replace = selector.replace(interpolation, var - .getExpr().toString()); + .getExpr().unquotedString()); + selectorList.add(selectorList.indexOf(selector), replace); selectorList.remove(selector); } diff --git a/theme-compiler/src/com/vaadin/sass/internal/tree/KeyframesNode.java b/theme-compiler/src/com/vaadin/sass/internal/tree/KeyframesNode.java index af4fec1ec3..b5e7491639 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/tree/KeyframesNode.java +++ b/theme-compiler/src/com/vaadin/sass/internal/tree/KeyframesNode.java @@ -54,7 +54,8 @@ public class KeyframesNode extends Node implements IVariableNode { if (animationName != null && animationName.contains(interpolation)) { if (animationName.contains(interpolation)) { animationName = animationName.replaceAll(Pattern - .quote(interpolation), node.getExpr().toString()); + .quote(interpolation), node.getExpr() + .unquotedString()); } } } diff --git a/theme-compiler/src/com/vaadin/sass/internal/tree/RuleNode.java b/theme-compiler/src/com/vaadin/sass/internal/tree/RuleNode.java index 19880e4ce5..cc6dbb7b75 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/tree/RuleNode.java +++ b/theme-compiler/src/com/vaadin/sass/internal/tree/RuleNode.java @@ -91,7 +91,8 @@ public class RuleNode extends Node implements IVariableNode { if (variable != null && variable.contains(interpolation)) { variable = variable.replaceAll(Pattern.quote(interpolation), - node.getExpr().toString()); + node.getExpr().unquotedString()); + } if (value.getLexicalUnitType() == LexicalUnitImpl.SAC_FUNCTION) { @@ -120,7 +121,7 @@ public class RuleNode extends Node implements IVariableNode { .getValue() .toString() .replaceAll(Pattern.quote(interpolation), - node.getExpr().toString())); + node.getExpr().unquotedString())); } current = current.getNextLexicalUnit(); } diff --git a/theme-compiler/tests/resources/automatic/css/interpolation-singlequote.css b/theme-compiler/tests/resources/automatic/css/interpolation-singlequote.css new file mode 100644 index 0000000000..58c6a3d37a --- /dev/null +++ b/theme-compiler/tests/resources/automatic/css/interpolation-singlequote.css @@ -0,0 +1 @@ +body { background-color: white; } \ No newline at end of file diff --git a/theme-compiler/tests/resources/automatic/css/mixin-keyframes.css b/theme-compiler/tests/resources/automatic/css/mixin-keyframes.css new file mode 100644 index 0000000000..c1f2ccd6c0 --- /dev/null +++ b/theme-compiler/tests/resources/automatic/css/mixin-keyframes.css @@ -0,0 +1,10 @@ +@-webkit-keyframes fade-in { + 0% { opacity: 0; } + 20% , 50%,100% { opacity: 1; } + 30%, 75% { opacity: 0; } +} +@-moz-keyframes fade-in { + 0% { opacity: 0; } + 20% , 50%,100% { opacity: 1; } + 30%, 75% { opacity: 0; } +} \ No newline at end of file diff --git a/theme-compiler/tests/resources/automatic/scss/interpolation-singlequote.scss b/theme-compiler/tests/resources/automatic/scss/interpolation-singlequote.scss new file mode 100644 index 0000000000..4cdd7bf165 --- /dev/null +++ b/theme-compiler/tests/resources/automatic/scss/interpolation-singlequote.scss @@ -0,0 +1,7 @@ +@mixin bgcolor ($name, $color) { + #{$name}{ + background-color: $color; + } +} + +@include bgcolor('body', white); diff --git a/theme-compiler/tests/resources/automatic/scss/mixin-keyframes.scss b/theme-compiler/tests/resources/automatic/scss/mixin-keyframes.scss new file mode 100644 index 0000000000..931d102e3f --- /dev/null +++ b/theme-compiler/tests/resources/automatic/scss/mixin-keyframes.scss @@ -0,0 +1,14 @@ +@mixin keyframes ($name) { + @-webkit-keyframes #{$name} { + @content; + } + @-moz-keyframes #{$name} { + @content; + } +} + +@include keyframes("fade-in") { + 0% {opacity: 0;} + 20% , 50%,100%{opacity: 1;} + 30%, 75% {opacity: 0;} +} \ No newline at end of file -- 2.39.5