diff options
author | John Ahlroos <john@vaadin.com> | 2013-11-20 14:26:40 +0200 |
---|---|---|
committer | John Ahlroos <john@vaadin.com> | 2013-11-20 14:27:09 +0200 |
commit | e3b1e6be389cbe48d1782723adf1595edbd10ea2 (patch) | |
tree | 61dbd2fac407f0b6657863d100d6b1f09e67e356 /theme-compiler | |
parent | 96de019ea4ee5536dab87d1f04d4cb94ae71371d (diff) | |
parent | dd7e6fee8c4717df59699f04f7e72a6f2e92008f (diff) | |
download | vaadin-framework-e3b1e6be389cbe48d1782723adf1595edbd10ea2.tar.gz vaadin-framework-e3b1e6be389cbe48d1782723adf1595edbd10ea2.zip |
Merge branch 'master' into grid
Change-Id: I9f669ec38c39a42d1ef2a25121b77aab31551863
Diffstat (limited to 'theme-compiler')
800 files changed, 11525 insertions, 7595 deletions
diff --git a/theme-compiler/ivy.xml b/theme-compiler/ivy.xml index 5bcdbb54cb..0f84966508 100644 --- a/theme-compiler/ivy.xml +++ b/theme-compiler/ivy.xml @@ -40,7 +40,9 @@ rev="2.4" conf="build-provided->default" /> <!-- Testing libs --> - <dependency org="junit" name="junit" rev="4.5" + <dependency org="junit" name="junit" rev="4.11" + conf="ide,test -> default" /> + <dependency org="org.jsoup" name="jsoup" rev="1.6.3" conf="ide,test -> default" /> <!-- Internally used, for now --> diff --git a/theme-compiler/src/com/vaadin/sass/internal/ScssStylesheet.java b/theme-compiler/src/com/vaadin/sass/internal/ScssStylesheet.java index 704425e300..ed6b98f5ac 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/ScssStylesheet.java +++ b/theme-compiler/src/com/vaadin/sass/internal/ScssStylesheet.java @@ -19,10 +19,10 @@ package com.vaadin.sass.internal; import java.io.File; import java.io.IOException; import java.util.ArrayList; -import java.util.Arrays; import java.util.Collections; import java.util.HashMap; import java.util.HashSet; +import java.util.List; import java.util.Map; import java.util.logging.Logger; @@ -35,8 +35,9 @@ import com.vaadin.sass.internal.handler.SCSSErrorHandler; import com.vaadin.sass.internal.parser.ParseException; import com.vaadin.sass.internal.parser.Parser; import com.vaadin.sass.internal.parser.SCSSParseException; +import com.vaadin.sass.internal.resolver.ClassloaderResolver; +import com.vaadin.sass.internal.resolver.FilesystemResolver; import com.vaadin.sass.internal.resolver.ScssStylesheetResolver; -import com.vaadin.sass.internal.resolver.VaadinResolver; import com.vaadin.sass.internal.tree.BlockNode; import com.vaadin.sass.internal.tree.MixinDefNode; import com.vaadin.sass.internal.tree.Node; @@ -63,6 +64,8 @@ public class ScssStylesheet extends Node { private String charset; + private List<ScssStylesheetResolver> resolvers = new ArrayList<ScssStylesheetResolver>(); + /** * Read in a file SCSS and parse it into a ScssStylesheet * @@ -90,18 +93,48 @@ public class ScssStylesheet extends Node { } /** - * Main entry point for the SASS compiler. Takes in a file and encoding then - * builds up a ScssStylesheet tree out of it. Calling compile() on it will - * transform SASS into CSS. Calling toString() will print out the SCSS/CSS. + * Main entry point for the SASS compiler. Takes in a file and an optional + * parent style sheet, then builds up a ScssStylesheet tree out of it. + * Calling compile() on it will transform SASS into CSS. Calling toString() + * will print out the SCSS/CSS. + * + * @param identifier + * The file path. If null then null is returned. + * @param parentStylesheet + * Style sheet from which to inherit resolvers and encoding. May + * be null. + * @return + * @throws CSSException + * @throws IOException + */ + public static ScssStylesheet get(String identifier, + ScssStylesheet parentStylesheet) throws CSSException, IOException { + return get(identifier, parentStylesheet, new SCSSDocumentHandlerImpl(), + new SCSSErrorHandler()); + } + + /** + * Main entry point for the SASS compiler. Takes in a file, an optional + * parent stylesheet, and document and error handlers. Then builds up a + * ScssStylesheet tree out of it. Calling compile() on it will transform + * SASS into CSS. Calling toString() will print out the SCSS/CSS. * * @param identifier * The file path. If null then null is returned. - * @param encoding + * @param parentStylesheet + * Style sheet from which to inherit resolvers and encoding. May + * be null. + * @param documentHandler + * Instance of document handler. May not be null. + * @param errorHandler + * Instance of error handler. May not be null. * @return * @throws CSSException * @throws IOException */ - public static ScssStylesheet get(String identifier, String encoding) + public static ScssStylesheet get(String identifier, + ScssStylesheet parentStylesheet, + SCSSDocumentHandler documentHandler, SCSSErrorHandler errorHandler) throws CSSException, IOException { /* * The encoding to be used is passed through "encoding" parameter. the @@ -120,18 +153,27 @@ public class ScssStylesheet extends Node { File file = new File(identifier); file = file.getCanonicalFile(); - SCSSDocumentHandler handler = new SCSSDocumentHandlerImpl(); - ScssStylesheet stylesheet = handler.getStyleSheet(); - - InputSource source = stylesheet.resolveStylesheet(identifier); + ScssStylesheet stylesheet = documentHandler.getStyleSheet(); + if (parentStylesheet == null) { + // Use default resolvers + stylesheet.addResolver(new FilesystemResolver()); + stylesheet.addResolver(new ClassloaderResolver()); + } else { + // Use parent resolvers + stylesheet.setResolvers(parentStylesheet.getResolvers()); + } + InputSource source = stylesheet.resolveStylesheet(identifier, + parentStylesheet); if (source == null) { return null; } - source.setEncoding(encoding); + if (parentStylesheet != null) { + source.setEncoding(parentStylesheet.getCharset()); + } Parser parser = new Parser(); - parser.setErrorHandler(new SCSSErrorHandler()); - parser.setDocumentHandler(handler); + parser.setErrorHandler(errorHandler); + parser.setDocumentHandler(documentHandler); try { parser.parseStyleSheet(source); @@ -145,21 +187,10 @@ public class ScssStylesheet extends Node { return stylesheet; } - private static ScssStylesheetResolver[] resolvers = null; - - public static void setStylesheetResolvers( - ScssStylesheetResolver... styleSheetResolvers) { - resolvers = Arrays.copyOf(styleSheetResolvers, - styleSheetResolvers.length); - } - - public InputSource resolveStylesheet(String identifier) { - if (resolvers == null) { - setStylesheetResolvers(new VaadinResolver()); - } - - for (ScssStylesheetResolver resolver : resolvers) { - InputSource source = resolver.resolve(identifier); + public InputSource resolveStylesheet(String identifier, + ScssStylesheet parentStylesheet) { + for (ScssStylesheetResolver resolver : getResolvers()) { + InputSource source = resolver.resolve(parentStylesheet, identifier); if (source != null) { File f = new File(source.getURI()); setFile(f); @@ -171,6 +202,38 @@ public class ScssStylesheet extends Node { } /** + * Retrieves a list of resolvers to use when resolving imports + * + * @since 7.2 + * @return the resolvers used to resolving imports + */ + public List<ScssStylesheetResolver> getResolvers() { + return Collections.unmodifiableList(resolvers); + } + + /** + * Sets the list of resolvers to use when resolving imports + * + * @since 7.2 + * @param resolvers + * the resolvers to set + */ + public void setResolvers(List<ScssStylesheetResolver> resolvers) { + this.resolvers = new ArrayList<ScssStylesheetResolver>(resolvers); + } + + /** + * Adds the given resolver to the resolver list + * + * @since 7.2 + * @param resolver + * The resolver to add + */ + public void addResolver(ScssStylesheetResolver resolver) { + resolvers.add(resolver); + } + + /** * Applies all the visitors and compiles SCSS into Css. * * @throws Exception 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<LexicalUnitImpl> args); + void includeDirective(String name, List<LexicalUnitImpl> 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<LexicalUnitImpl> 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<LexicalUnitImpl> args) { + public void includeDirective(String name, List<LexicalUnitImpl> 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<LexicalUnitImpl> args) { + MixinNode node = new MixinNode(name, args); nodeStack.peek().appendChild(node); nodeStack.push(node); diff --git a/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSErrorHandler.java b/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSErrorHandler.java index 2e51c686d4..0d48da34e4 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSErrorHandler.java +++ b/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSErrorHandler.java @@ -15,34 +15,46 @@ */ package com.vaadin.sass.internal.handler; +import java.io.PrintStream; + import org.w3c.css.sac.CSSException; import org.w3c.css.sac.CSSParseException; import org.w3c.css.sac.ErrorHandler; public class SCSSErrorHandler implements ErrorHandler { + private PrintStream errorStream; + + public SCSSErrorHandler(PrintStream errorStream) { + this.errorStream = errorStream; + } + + public SCSSErrorHandler() { + this(System.out); + } + @Override public void error(CSSParseException arg0) throws CSSException { - System.out.println("Error when parsing file \n" + arg0.getURI() + errorStream.println("Error when parsing file \n" + arg0.getURI() + " on line " + arg0.getLineNumber() + ", column " + arg0.getColumnNumber()); - System.out.println(arg0.getMessage() + "\n"); + errorStream.println(arg0.getMessage() + "\n"); } @Override public void fatalError(CSSParseException arg0) throws CSSException { - System.out.println("FATAL Error when parsing file \n" + arg0.getURI() + errorStream.println("FATAL Error when parsing file \n" + arg0.getURI() + " on line " + arg0.getLineNumber() + ", column " + arg0.getColumnNumber()); - System.out.println(arg0.getMessage() + "\n"); + errorStream.println(arg0.getMessage() + "\n"); } @Override public void warning(CSSParseException arg0) throws CSSException { - System.out.println("Warning when parsing file \n" + arg0.getURI() + errorStream.println("Warning when parsing file \n" + arg0.getURI() + " on line " + arg0.getLineNumber() + ", column " + arg0.getColumnNumber()); - System.out.println(arg0.getMessage() + "\n"); + errorStream.println(arg0.getMessage() + "\n"); } } 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 498e1a941b..cfd428e094 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/parser/LexicalUnitImpl.java +++ b/theme-compiler/src/com/vaadin/sass/internal/parser/LexicalUnitImpl.java @@ -148,6 +148,22 @@ public class LexicalUnitImpl implements LexicalUnit, SCSSLexicalUnit, return f; } + /** + * Returns the float value as a string unless the value is an integer. In + * that case returns the integer value as a string. + * + * @return a string representing the value, either with or without decimals + */ + public String getFloatOrInteger() { + float f = getFloatValue(); + int i = (int) f; + if ((i) == f) { + return i + ""; + } else { + return f + ""; + } + } + public void setFloatValue(float f) { this.f = f; i = (int) f; @@ -274,7 +290,7 @@ public class LexicalUnitImpl implements LexicalUnit, SCSSLexicalUnit, text = Integer.toString(getIntegerValue(), 10); break; case LexicalUnit.SAC_REAL: - text = getFloatValue() + ""; + text = getFloatOrInteger(); break; case LexicalUnit.SAC_EM: case SCSSLexicalUnit.SAC_LEM: @@ -295,13 +311,7 @@ public class LexicalUnitImpl implements LexicalUnit, SCSSLexicalUnit, case LexicalUnit.SAC_HERTZ: case LexicalUnit.SAC_KILOHERTZ: case LexicalUnit.SAC_DIMENSION: - float f = getFloatValue(); - int i = (int) f; - if ((i) == f) { - text = i + getDimensionUnitText(); - } else { - text = f + getDimensionUnitText(); - } + text = getFloatOrInteger() + getDimensionUnitText(); break; case LexicalUnit.SAC_URI: text = "url(" + getStringValue() + ")"; @@ -367,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 170d8f3e54..53d1ee78ca 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.java +++ b/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.java @@ -159,7 +159,6 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { /** * This method parses only one rule (style rule or at-rule, except - * * @charset). * * @param source @@ -874,6 +873,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case TO: case FROM: + case CONTENT_SYM: case PERCENTAGE: ; break; @@ -881,7 +881,20 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { jj_la1[22] = jj_gen; break label_17; } - keyframeSelector(); + 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) { @@ -890,7 +903,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[23] = jj_gen; + jj_la1[24] = jj_gen; break label_18; } jj_consume_token(S); @@ -907,6 +920,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { final public void keyframeSelector() throws ParseException { Token n; + String selector = ""; boolean start = false; try { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { @@ -920,36 +934,86 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { n = jj_consume_token(PERCENTAGE); break; default: - jj_la1[24] = jj_gen; + 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[25] = jj_gen; + jj_la1[26] = 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: + case COMMA: ; break; default: - jj_la1[26] = jj_gen; + jj_la1[27] = jj_gen; break label_20; } + 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); + } + 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(); + } + 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(n.image); - label_21: while (true) { + documentHandler.startKeyframeSelector(selector); + label_24: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case PLUS: case PRECEDES: @@ -973,11 +1037,12 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { case HASH: case MEDIA_SYM: case KEY_FRAME_SYM: + case ATKEYWORD: ; break; default: - jj_la1[27] = jj_gen; - break label_21; + jj_la1[32] = jj_gen; + break label_24; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case PLUS: @@ -1001,26 +1066,27 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { 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_la1[33] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } jj_consume_token(RBRACE); - label_22: while (true) { + label_25: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[29] = jj_gen; - break label_22; + jj_la1[34] = jj_gen; + break label_25; } jj_consume_token(S); } @@ -1056,14 +1122,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { MediaListImpl ml = new MediaListImpl(); try { jj_consume_token(MEDIA_SYM); - label_23: while (true) { + label_26: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[30] = jj_gen; - break label_23; + jj_la1[35] = jj_gen; + break label_26; } jj_consume_token(S); } @@ -1071,18 +1137,18 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { start = true; documentHandler.startMedia(ml); jj_consume_token(LBRACE); - label_24: while (true) { + label_27: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[31] = jj_gen; - break label_24; + jj_la1[36] = jj_gen; + break label_27; } jj_consume_token(S); } - label_25: while (true) { + label_28: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case CDO: case LBRACE: @@ -1122,8 +1188,8 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[32] = jj_gen; - break label_25; + jj_la1[37] = jj_gen; + break label_28; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case DEBUG_SYM: @@ -1168,20 +1234,20 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { skipUnknownRule(); break; default: - jj_la1[33] = jj_gen; + jj_la1[38] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } jj_consume_token(RBRACE); - label_26: while (true) { + label_29: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[34] = jj_gen; - break label_26; + jj_la1[39] = jj_gen; + break label_29; } jj_consume_token(S); } @@ -1250,34 +1316,34 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { String pseudo = null; try { jj_consume_token(PAGE_SYM); - label_27: while (true) { + label_30: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[35] = jj_gen; - break label_27; + jj_la1[40] = jj_gen; + break label_30; } jj_consume_token(S); } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case IDENT: n = jj_consume_token(IDENT); - label_28: while (true) { + label_31: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[36] = jj_gen; - break label_28; + jj_la1[41] = jj_gen; + break label_31; } jj_consume_token(S); } break; default: - jj_la1[37] = jj_gen; + jj_la1[42] = jj_gen; ; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { @@ -1285,21 +1351,21 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { pseudo = pseudo_page(); break; default: - jj_la1[38] = jj_gen; + jj_la1[43] = jj_gen; ; } if (n != null) { page = convertIdent(n.image); } jj_consume_token(LBRACE); - label_29: while (true) { + label_32: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[39] = jj_gen; - break label_29; + jj_la1[44] = jj_gen; + break label_32; } jj_consume_token(S); } @@ -1311,27 +1377,27 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { declaration(); break; default: - jj_la1[40] = jj_gen; + jj_la1[45] = jj_gen; ; } - label_30: while (true) { + label_33: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case SEMICOLON: ; break; default: - jj_la1[41] = jj_gen; - break label_30; + jj_la1[46] = jj_gen; + break label_33; } jj_consume_token(SEMICOLON); - label_31: while (true) { + label_34: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[42] = jj_gen; - break label_31; + jj_la1[47] = jj_gen; + break label_34; } jj_consume_token(S); } @@ -1341,19 +1407,19 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { declaration(); break; default: - jj_la1[43] = jj_gen; + jj_la1[48] = jj_gen; ; } } jj_consume_token(RBRACE); - label_32: while (true) { + label_35: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[44] = jj_gen; - break label_32; + jj_la1[49] = jj_gen; + break label_35; } jj_consume_token(S); } @@ -1379,14 +1445,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { Token n; jj_consume_token(COLON); n = jj_consume_token(IDENT); - label_33: while (true) { + label_36: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[45] = jj_gen; - break label_33; + jj_la1[50] = jj_gen; + break label_36; } jj_consume_token(S); } @@ -1402,26 +1468,26 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { boolean start = false; try { jj_consume_token(FONT_FACE_SYM); - label_34: while (true) { + label_37: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[46] = jj_gen; - break label_34; + jj_la1[51] = jj_gen; + break label_37; } jj_consume_token(S); } jj_consume_token(LBRACE); - label_35: while (true) { + label_38: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[47] = jj_gen; - break label_35; + jj_la1[52] = jj_gen; + break label_38; } jj_consume_token(S); } @@ -1433,27 +1499,27 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { declaration(); break; default: - jj_la1[48] = jj_gen; + jj_la1[53] = jj_gen; ; } - label_36: while (true) { + label_39: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case SEMICOLON: ; break; default: - jj_la1[49] = jj_gen; - break label_36; + jj_la1[54] = jj_gen; + break label_39; } jj_consume_token(SEMICOLON); - label_37: while (true) { + label_40: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[50] = jj_gen; - break label_37; + jj_la1[55] = jj_gen; + break label_40; } jj_consume_token(S); } @@ -1463,19 +1529,19 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { declaration(); break; default: - jj_la1[51] = jj_gen; + jj_la1[56] = jj_gen; ; } } jj_consume_token(RBRACE); - label_38: while (true) { + label_41: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[52] = jj_gen; - break label_38; + jj_la1[57] = jj_gen; + break label_41; } jj_consume_token(S); } @@ -1577,7 +1643,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { n = jj_consume_token(UNKNOWN); break; default: - jj_la1[53] = jj_gen; + jj_la1[58] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -1612,12 +1678,12 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { connector = combinatorChar(); break; default: - jj_la1[54] = jj_gen; + jj_la1[59] = jj_gen; ; } break; default: - jj_la1[55] = jj_gen; + jj_la1[60] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -1643,18 +1709,18 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { t = jj_consume_token(SIBLING); break; default: - jj_la1[56] = jj_gen; + jj_la1[61] = jj_gen; jj_consume_token(-1); throw new ParseException(); } - label_39: while (true) { + label_42: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[57] = jj_gen; - break label_39; + jj_la1[62] = jj_gen; + break label_42; } jj_consume_token(S); } @@ -1672,20 +1738,20 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { String value = ""; // This is not really taking the syntax of filter rules into account n = jj_consume_token(MICROSOFT_RULE); - label_40: while (true) { + label_43: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[58] = jj_gen; - break label_40; + jj_la1[63] = jj_gen; + break label_43; } jj_consume_token(S); } name = n.image; jj_consume_token(COLON); - label_41: while (true) { + label_44: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case IDENT: n = jj_consume_token(IDENT); @@ -1734,7 +1800,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } break; default: - jj_la1[59] = jj_gen; + jj_la1[64] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -1753,19 +1819,19 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[60] = jj_gen; - break label_41; + jj_la1[65] = jj_gen; + break label_44; } } jj_consume_token(SEMICOLON); - label_42: while (true) { + label_45: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[61] = jj_gen; - break label_42; + jj_la1[66] = jj_gen; + break label_45; } jj_consume_token(S); } @@ -1779,7 +1845,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { final public String property() throws ParseException { Token t; String s = ""; - label_43: while (true) { + label_46: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case IDENT: t = jj_consume_token(IDENT); @@ -1790,7 +1856,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { s += t.image; break; default: - jj_la1[62] = jj_gen; + jj_la1[67] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -1800,18 +1866,18 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[63] = jj_gen; - break label_43; + jj_la1[68] = jj_gen; + break label_46; } } - label_44: while (true) { + label_47: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[64] = jj_gen; - break label_44; + jj_la1[69] = jj_gen; + break label_47; } jj_consume_token(S); } @@ -1826,14 +1892,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { final public String variableName() throws ParseException { Token n; n = jj_consume_token(VARIABLE); - label_45: while (true) { + label_48: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[65] = jj_gen; - break label_45; + jj_la1[70] = jj_gen; + break label_48; } jj_consume_token(S); } @@ -1848,14 +1914,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { final public String functionName() throws ParseException { Token n; n = jj_consume_token(FUNCTION); - label_46: while (true) { + label_49: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[66] = jj_gen; - break label_46; + jj_la1[71] = jj_gen; + break label_49; } jj_consume_token(S); } @@ -1880,20 +1946,20 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { l = selectorList(); save = token; jj_consume_token(LBRACE); - label_47: while (true) { + label_50: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[67] = jj_gen; - break label_47; + jj_la1[72] = jj_gen; + break label_50; } jj_consume_token(S); } start = true; documentHandler.startSelector(l); - label_48: while (true) { + label_51: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case PLUS: case PRECEDES: @@ -1918,11 +1984,12 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { case IMPORT_SYM: case MEDIA_SYM: case KEY_FRAME_SYM: + case ATKEYWORD: ; break; default: - jj_la1[68] = jj_gen; - break label_48; + jj_la1[73] = jj_gen; + break label_51; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case PLUS: @@ -1946,6 +2013,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { case HASH: case MEDIA_SYM: case KEY_FRAME_SYM: + case ATKEYWORD: ifContentStatement(); break; case MICROSOFT_RULE: @@ -1955,20 +2023,20 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { importDeclaration(); break; default: - jj_la1[69] = jj_gen; + jj_la1[74] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } jj_consume_token(RBRACE); - label_49: while (true) { + label_52: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[70] = jj_gen; - break label_49; + jj_la1[75] = jj_gen; + break label_52; } jj_consume_token(S); } @@ -1997,24 +2065,24 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ArrayList<String> selectors = new ArrayList<String>(); String selector; selector = selector(); - label_50: while (true) { + label_53: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case COMMA: ; break; default: - jj_la1[71] = jj_gen; - break label_50; + jj_la1[76] = jj_gen; + break label_53; } jj_consume_token(COMMA); - label_51: while (true) { + label_54: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[72] = jj_gen; - break label_51; + jj_la1[77] = jj_gen; + break label_54; } jj_consume_token(S); } @@ -2056,27 +2124,27 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { selector = simple_selector(selector, comb); break; default: - jj_la1[73] = jj_gen; + jj_la1[78] = jj_gen; jj_consume_token(-1); throw new ParseException(); } - label_52: while (true) { + label_55: while (true) { if (jj_2_2(2)) { ; } else { - break label_52; + break label_55; } comb = combinator(); selector = simple_selector(selector, comb); } - label_53: while (true) { + label_56: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[74] = jj_gen; - break label_53; + jj_la1[79] = jj_gen; + break label_56; } jj_consume_token(S); } @@ -2125,7 +2193,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { case INTERPOLATION: case IDENT: simple_current = element_name(); - label_54: while (true) { + label_57: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LBRACKET: case DOT: @@ -2134,8 +2202,8 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[75] = jj_gen; - break label_54; + jj_la1[80] = jj_gen; + break label_57; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case HASH: @@ -2151,90 +2219,17 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { 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_la1[81] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } break; + case LBRACKET: 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; - } + case HASH: + label_58: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case HASH: cond = hash(cond); @@ -2253,11 +2248,6 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { 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: @@ -2269,28 +2259,10 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { 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_la1[84] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2354,7 +2326,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { s += t.image; break; default: - jj_la1[86] = jj_gen; + jj_la1[85] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2364,7 +2336,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[87] = jj_gen; + jj_la1[86] = jj_gen; break label_59; } } @@ -2405,7 +2377,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { s += t.image; break; default: - jj_la1[88] = jj_gen; + jj_la1[87] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2415,7 +2387,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[89] = jj_gen; + jj_la1[88] = jj_gen; break label_60; } } @@ -2442,7 +2414,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } break; default: - jj_la1[90] = jj_gen; + jj_la1[89] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2465,7 +2437,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[91] = jj_gen; + jj_la1[90] = jj_gen; break label_61; } jj_consume_token(S); @@ -2477,7 +2449,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[92] = jj_gen; + jj_la1[91] = jj_gen; break label_62; } jj_consume_token(S); @@ -2515,7 +2487,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { cases = 6; break; default: - jj_la1[93] = jj_gen; + jj_la1[92] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2525,7 +2497,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[94] = jj_gen; + jj_la1[93] = jj_gen; break label_63; } jj_consume_token(S); @@ -2540,7 +2512,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { attValue = val.image; break; default: - jj_la1[95] = jj_gen; + jj_la1[94] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2550,14 +2522,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[96] = jj_gen; + jj_la1[95] = jj_gen; break label_64; } jj_consume_token(S); } break; default: - jj_la1[97] = jj_gen; + jj_la1[96] = jj_gen; ; } jj_consume_token(RBRACKET); @@ -2622,7 +2594,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { isPseudoElement = true; break; default: - jj_la1[98] = jj_gen; + jj_la1[97] = jj_gen; ; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { @@ -2671,12 +2643,12 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[99] = jj_gen; + jj_la1[98] = jj_gen; break label_65; } jj_consume_token(S); } - d = skipStatementUntilRightParan(); + d = skipStatementUntilMatchingRightParan(); jj_consume_token(RPARAN); // accept anything between function and a right parenthesis String f = convertIdent(n.image); @@ -2697,7 +2669,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } break; default: - jj_la1[100] = jj_gen; + jj_la1[99] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2742,7 +2714,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[101] = jj_gen; + jj_la1[100] = jj_gen; break label_66; } jj_consume_token(S); @@ -2753,7 +2725,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { guarded = guarded(); break; default: - jj_la1[102] = jj_gen; + jj_la1[101] = jj_gen; ; } label_67: while (true) { @@ -2764,7 +2736,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[103] = jj_gen; + jj_la1[102] = jj_gen; break label_68; } jj_consume_token(S); @@ -2774,7 +2746,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[104] = jj_gen; + jj_la1[103] = jj_gen; break label_67; } } @@ -2813,7 +2785,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { eachDirective(); break; default: - jj_la1[105] = jj_gen; + jj_la1[104] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2852,7 +2824,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { keyframes(); break; default: - jj_la1[106] = jj_gen; + jj_la1[105] = jj_gen; if (jj_2_3(2147483647)) { variable(); } else { @@ -2864,8 +2836,11 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { case IF_SYM: controlDirective(); break; + case ATKEYWORD: + atRuleDeclaration(); + break; default: - jj_la1[107] = jj_gen; + jj_la1[106] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2903,7 +2878,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[108] = jj_gen; + jj_la1[107] = jj_gen; break label_69; } } @@ -2914,7 +2889,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[109] = jj_gen; + jj_la1[108] = jj_gen; break label_70; } jj_consume_token(S); @@ -2943,14 +2918,48 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { case VARIABLE: case HASH: case MEDIA_SYM: + case FONT_FACE_SYM: case KEY_FRAME_SYM: + case ATKEYWORD: ; break; default: - jj_la1[110] = jj_gen; + jj_la1[109] = jj_gen; break label_71; } - ifContentStatement(); + 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[110] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } } jj_consume_token(RBRACE); label_72: while (true) { @@ -3070,14 +3079,48 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { case VARIABLE: case HASH: case MEDIA_SYM: + case FONT_FACE_SYM: case KEY_FRAME_SYM: + case ATKEYWORD: ; break; default: jj_la1[117] = jj_gen; break label_77; } - ifContentStatement(); + 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[118] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } } jj_consume_token(RBRACE); label_78: while (true) { @@ -3086,7 +3129,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[118] = jj_gen; + jj_la1[119] = jj_gen; break label_78; } jj_consume_token(S); @@ -3152,7 +3195,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { n = jj_consume_token(NOT_EQ); break; default: - jj_la1[119] = jj_gen; + jj_la1[120] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -3184,7 +3227,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[120] = jj_gen; + jj_la1[121] = jj_gen; break label_79; } jj_consume_token(S); @@ -3196,7 +3239,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[121] = jj_gen; + jj_la1[122] = jj_gen; break label_80; } jj_consume_token(S); @@ -3208,7 +3251,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[122] = jj_gen; + jj_la1[123] = jj_gen; break label_81; } jj_consume_token(S); @@ -3223,7 +3266,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { documentHandler.startEachDirective(var.image, listVariable); break; default: - jj_la1[123] = jj_gen; + jj_la1[124] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -3234,7 +3277,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[124] = jj_gen; + jj_la1[125] = jj_gen; break label_82; } jj_consume_token(S); @@ -3262,10 +3305,11 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { case HASH: case MEDIA_SYM: case KEY_FRAME_SYM: + case ATKEYWORD: ; break; default: - jj_la1[125] = jj_gen; + jj_la1[126] = jj_gen; break label_83; } ifContentStatement(); @@ -3277,7 +3321,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[126] = jj_gen; + jj_la1[127] = jj_gen; break label_84; } jj_consume_token(S); @@ -3295,7 +3339,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[127] = jj_gen; + jj_la1[128] = jj_gen; break label_85; } jj_consume_token(S); @@ -3307,7 +3351,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[128] = jj_gen; + jj_la1[129] = jj_gen; break label_86; } jj_consume_token(COMMA); @@ -3317,7 +3361,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[129] = jj_gen; + jj_la1[130] = jj_gen; break label_87; } jj_consume_token(S); @@ -3330,7 +3374,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[130] = jj_gen; + jj_la1[131] = jj_gen; break label_88; } jj_consume_token(S); @@ -3355,7 +3399,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[131] = jj_gen; + jj_la1[132] = jj_gen; break label_89; } jj_consume_token(S); @@ -3375,14 +3419,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[132] = jj_gen; + jj_la1[133] = jj_gen; break label_90; } jj_consume_token(S); } break; default: - jj_la1[133] = jj_gen; + jj_la1[134] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -3393,7 +3437,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[134] = jj_gen; + jj_la1[135] = jj_gen; break label_91; } jj_consume_token(S); @@ -3424,10 +3468,11 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { case PAGE_SYM: case FONT_FACE_SYM: case KEY_FRAME_SYM: + case ATKEYWORD: ; break; default: - jj_la1[135] = jj_gen; + jj_la1[136] = jj_gen; break label_92; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { @@ -3452,6 +3497,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { case HASH: case MEDIA_SYM: case KEY_FRAME_SYM: + case ATKEYWORD: ifContentStatement(); break; case FONT_FACE_SYM: @@ -3461,7 +3507,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { page(); break; default: - jj_la1[136] = jj_gen; + jj_la1[137] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -3473,7 +3519,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[137] = jj_gen; + jj_la1[138] = jj_gen; break label_93; } jj_consume_token(S); @@ -3492,7 +3538,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[138] = jj_gen; + jj_la1[139] = jj_gen; break label_94; } jj_consume_token(COMMA); @@ -3502,7 +3548,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[139] = jj_gen; + jj_la1[140] = jj_gen; break label_95; } jj_consume_token(S); @@ -3560,7 +3606,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[140] = jj_gen; + jj_la1[141] = jj_gen; break label_96; } jj_consume_token(S); @@ -3582,14 +3628,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[141] = jj_gen; + jj_la1[142] = jj_gen; break label_98; } jj_consume_token(S); } break; default: - jj_la1[142] = jj_gen; + jj_la1[143] = jj_gen; ; } prev = nonVariableTerm(prev); @@ -3601,13 +3647,13 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { token.beginColumn, prev, variable.image); break; default: - jj_la1[143] = jj_gen; + jj_la1[144] = jj_gen; jj_consume_token(-1); throw new ParseException(); } break; default: - jj_la1[144] = jj_gen; + jj_la1[145] = jj_gen; ; } VariableNode arg = new VariableNode(name, first, false); @@ -3667,7 +3713,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[145] = jj_gen; + jj_la1[146] = jj_gen; break label_99; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { @@ -3679,14 +3725,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[146] = jj_gen; + jj_la1[147] = jj_gen; break label_100; } jj_consume_token(S); } break; default: - jj_la1[147] = jj_gen; + jj_la1[148] = jj_gen; ; } next = term(prev); @@ -3699,7 +3745,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[148] = jj_gen; + jj_la1[149] = jj_gen; break label_101; } jj_consume_token(COMMA); @@ -3709,7 +3755,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[149] = jj_gen; + jj_la1[150] = jj_gen; break label_102; } jj_consume_token(S); @@ -3756,7 +3802,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[150] = jj_gen; + jj_la1[151] = jj_gen; break label_103; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { @@ -3768,14 +3814,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[151] = jj_gen; + jj_la1[152] = jj_gen; break label_104; } jj_consume_token(S); } break; default: - jj_la1[152] = jj_gen; + jj_la1[153] = jj_gen; ; } next = term(prev); @@ -3801,7 +3847,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[153] = jj_gen; + jj_la1[154] = jj_gen; break label_105; } jj_consume_token(S); @@ -3819,24 +3865,35 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { name = functionName(); args = argValuelist(); jj_consume_token(RPARAN); + label_106: while (true) { + switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { + case S: + ; + break; + default: + jj_la1[155] = jj_gen; + break label_106; + } + jj_consume_token(S); + } break; default: - jj_la1[154] = jj_gen; + jj_la1[156] = jj_gen; jj_consume_token(-1); throw new ParseException(); } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case SEMICOLON: - label_106: while (true) { + label_107: while (true) { jj_consume_token(SEMICOLON); - label_107: while (true) { + label_108: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[155] = jj_gen; - break label_107; + jj_la1[157] = jj_gen; + break label_108; } jj_consume_token(S); } @@ -3845,27 +3902,27 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[156] = jj_gen; - break label_106; + jj_la1[158] = jj_gen; + break label_107; } } documentHandler.includeDirective(name, args); break; case LBRACE: jj_consume_token(LBRACE); - label_108: while (true) { + label_109: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[157] = jj_gen; - break label_108; + jj_la1[159] = jj_gen; + break label_109; } jj_consume_token(S); } - documentHandler.startIncludeContentBlock(name); - label_109: while (true) { + documentHandler.startIncludeContentBlock(name, args); + label_110: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case PLUS: case PRECEDES: @@ -3876,34 +3933,62 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { 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[158] = jj_gen; - break label_109; + jj_la1[160] = jj_gen; + break label_110; + } + 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[161] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); } - styleRuleOrDeclarationOrNestedProperties(); } jj_consume_token(RBRACE); - label_110: while (true) { + label_111: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[159] = jj_gen; - break label_110; + jj_la1[162] = jj_gen; + break label_111; } jj_consume_token(S); } documentHandler.endIncludeContentBlock(); break; default: - jj_la1[160] = jj_gen; + jj_la1[163] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -3930,26 +4015,26 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { // refactor, remove those 3 LOOKAHEAD(5). n = jj_consume_token(VARIABLE); variable = n.image; - label_111: while (true) { + label_112: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[161] = jj_gen; - break label_111; + jj_la1[164] = jj_gen; + break label_112; } jj_consume_token(S); } jj_consume_token(COLON); - label_112: while (true) { + label_113: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[162] = jj_gen; - break label_112; + jj_la1[165] = jj_gen; + break label_113; } jj_consume_token(S); } @@ -3964,18 +4049,18 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { type = jj_consume_token(CONTAINS); break; default: - jj_la1[163] = jj_gen; + jj_la1[166] = jj_gen; jj_consume_token(-1); throw new ParseException(); } - label_113: while (true) { + label_114: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[164] = jj_gen; - break label_113; + jj_la1[167] = jj_gen; + break label_114; } jj_consume_token(S); } @@ -3985,18 +4070,18 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { jj_consume_token(RPARAN); break; default: - jj_la1[165] = jj_gen; + jj_la1[168] = jj_gen; ; } jj_consume_token(COMMA); - label_114: while (true) { + label_115: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[166] = jj_gen; - break label_114; + jj_la1[169] = jj_gen; + break label_115; } jj_consume_token(S); } @@ -4004,33 +4089,33 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case COMMA: jj_consume_token(COMMA); - label_115: while (true) { + label_116: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[167] = jj_gen; - break label_115; + jj_la1[170] = jj_gen; + break label_116; } jj_consume_token(S); } n = jj_consume_token(IDENT); separator = n.image; - label_116: while (true) { + label_117: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[168] = jj_gen; - break label_116; + jj_la1[171] = jj_gen; + break label_117; } jj_consume_token(S); } break; default: - jj_la1[169] = jj_gen; + jj_la1[172] = jj_gen; ; } jj_consume_token(RPARAN); @@ -4051,26 +4136,26 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { default: break; } - label_117: while (true) { + label_118: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[170] = jj_gen; - break label_117; + jj_la1[173] = jj_gen; + break label_118; } jj_consume_token(S); } jj_consume_token(SEMICOLON); - label_118: while (true) { + label_119: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[171] = jj_gen; - break label_118; + jj_la1[174] = jj_gen; + break label_119; } jj_consume_token(S); } @@ -4088,38 +4173,38 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { Token n = null; n = jj_consume_token(VARIABLE); variable = n.image; - label_119: while (true) { + label_120: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[172] = jj_gen; - break label_119; + jj_la1[175] = jj_gen; + break label_120; } jj_consume_token(S); } jj_consume_token(COLON); - label_120: while (true) { + label_121: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[173] = jj_gen; - break label_120; + jj_la1[176] = jj_gen; + break label_121; } jj_consume_token(S); } jj_consume_token(APPEND); - label_121: while (true) { + label_122: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[174] = jj_gen; - break label_121; + jj_la1[177] = jj_gen; + break label_122; } jj_consume_token(S); } @@ -4129,18 +4214,18 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { jj_consume_token(RPARAN); break; default: - jj_la1[175] = jj_gen; + jj_la1[178] = jj_gen; ; } jj_consume_token(COMMA); - label_122: while (true) { + label_123: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[176] = jj_gen; - break label_122; + jj_la1[179] = jj_gen; + break label_123; } jj_consume_token(S); } @@ -4148,33 +4233,33 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case COMMA: jj_consume_token(COMMA); - label_123: while (true) { + label_124: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[177] = jj_gen; - break label_123; + jj_la1[180] = jj_gen; + break label_124; } jj_consume_token(S); } n = jj_consume_token(IDENT); separator = n.image; - label_124: while (true) { + label_125: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[178] = jj_gen; - break label_124; + jj_la1[181] = jj_gen; + break label_125; } jj_consume_token(S); } break; default: - jj_la1[179] = jj_gen; + jj_la1[182] = jj_gen; ; } jj_consume_token(RPARAN); @@ -4193,38 +4278,38 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { Token n = null; n = jj_consume_token(VARIABLE); variable = n.image; - label_125: while (true) { + label_126: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[180] = jj_gen; - break label_125; + jj_la1[183] = jj_gen; + break label_126; } jj_consume_token(S); } jj_consume_token(COLON); - label_126: while (true) { + label_127: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[181] = jj_gen; - break label_126; + jj_la1[184] = jj_gen; + break label_127; } jj_consume_token(S); } jj_consume_token(REMOVE); - label_127: while (true) { + label_128: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[182] = jj_gen; - break label_127; + jj_la1[185] = jj_gen; + break label_128; } jj_consume_token(S); } @@ -4234,18 +4319,18 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { jj_consume_token(RPARAN); break; default: - jj_la1[183] = jj_gen; + jj_la1[186] = jj_gen; ; } jj_consume_token(COMMA); - label_128: while (true) { + label_129: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[184] = jj_gen; - break label_128; + jj_la1[187] = jj_gen; + break label_129; } jj_consume_token(S); } @@ -4253,33 +4338,33 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case COMMA: jj_consume_token(COMMA); - label_129: while (true) { + label_130: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[185] = jj_gen; - break label_129; + jj_la1[188] = jj_gen; + break label_130; } jj_consume_token(S); } n = jj_consume_token(IDENT); separator = n.image; - label_130: while (true) { + label_131: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[186] = jj_gen; - break label_130; + jj_la1[189] = jj_gen; + break label_131; } jj_consume_token(S); } break; default: - jj_la1[187] = jj_gen; + jj_la1[190] = jj_gen; ; } jj_consume_token(RPARAN); @@ -4300,43 +4385,43 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { case VARIABLE: n = jj_consume_token(VARIABLE); variable = n.image; - label_131: while (true) { + label_132: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[188] = jj_gen; - break label_131; + jj_la1[191] = jj_gen; + break label_132; } jj_consume_token(S); } jj_consume_token(COLON); - label_132: while (true) { + label_133: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[189] = jj_gen; - break label_132; + jj_la1[192] = jj_gen; + break label_133; } jj_consume_token(S); } break; default: - jj_la1[190] = jj_gen; + jj_la1[193] = jj_gen; ; } jj_consume_token(CONTAINS); - label_133: while (true) { + label_134: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[191] = jj_gen; - break label_133; + jj_la1[194] = jj_gen; + break label_134; } jj_consume_token(S); } @@ -4346,18 +4431,18 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { jj_consume_token(RPARAN); break; default: - jj_la1[192] = jj_gen; + jj_la1[195] = jj_gen; ; } jj_consume_token(COMMA); - label_134: while (true) { + label_135: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[193] = jj_gen; - break label_134; + jj_la1[196] = jj_gen; + break label_135; } jj_consume_token(S); } @@ -4365,33 +4450,33 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case COMMA: jj_consume_token(COMMA); - label_135: while (true) { + label_136: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[194] = jj_gen; - break label_135; + jj_la1[197] = jj_gen; + break label_136; } jj_consume_token(S); } n = jj_consume_token(IDENT); separator = n.image; - label_136: while (true) { + label_137: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[195] = jj_gen; - break label_136; + jj_la1[198] = jj_gen; + break label_137; } jj_consume_token(S); } break; default: - jj_la1[196] = jj_gen; + jj_la1[199] = jj_gen; ; } jj_consume_token(RPARAN); @@ -4493,7 +4578,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { warnDirective(); break; default: - jj_la1[197] = jj_gen; + jj_la1[200] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -4505,14 +4590,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { // TODO should evaluate the content expression, call // documentHandler.debugDirective() etc. System.out.println(content); - label_137: while (true) { + label_138: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[198] = jj_gen; - break label_137; + jj_la1[201] = jj_gen; + break label_138; } jj_consume_token(S); } @@ -4524,14 +4609,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { // TODO should evaluate the content expression, call // documentHandler.warnDirective() etc. System.err.println(content); - label_138: while (true) { + label_139: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[199] = jj_gen; - break label_138; + jj_la1[202] = jj_gen; + break label_139; } jj_consume_token(S); } @@ -4557,19 +4642,19 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { exclusive = false; break; default: - jj_la1[200] = jj_gen; + jj_la1[203] = jj_gen; jj_consume_token(-1); throw new ParseException(); } to = skipStatementUntilLeftBrace(); - label_139: while (true) { + label_140: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[201] = jj_gen; - break label_139; + jj_la1[204] = jj_gen; + break label_140; } jj_consume_token(S); } @@ -4599,28 +4684,28 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { final public void extendDirective() throws ParseException { ArrayList<String> list; jj_consume_token(EXTEND_SYM); - label_140: while (true) { + label_141: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[202] = jj_gen; - break label_140; + jj_la1[205] = jj_gen; + break label_141; } jj_consume_token(S); } list = selectorList(); - label_141: while (true) { + label_142: while (true) { jj_consume_token(SEMICOLON); - label_142: while (true) { + label_143: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[203] = jj_gen; - break label_142; + jj_la1[206] = jj_gen; + break label_143; } jj_consume_token(S); } @@ -4629,8 +4714,8 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[204] = jj_gen; - break label_141; + jj_la1[207] = jj_gen; + break label_142; } } documentHandler.extendDirective(list); @@ -4638,27 +4723,27 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { final public void contentDirective() throws ParseException { jj_consume_token(CONTENT_SYM); - label_143: while (true) { + label_144: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[205] = jj_gen; - break label_143; + jj_la1[208] = jj_gen; + break label_144; } jj_consume_token(S); } - label_144: while (true) { + label_145: while (true) { jj_consume_token(SEMICOLON); - label_145: while (true) { + label_146: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[206] = jj_gen; - break label_145; + jj_la1[209] = jj_gen; + break label_146; } jj_consume_token(S); } @@ -4667,8 +4752,8 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[207] = jj_gen; - break label_144; + jj_la1[210] = jj_gen; + break label_145; } } documentHandler.contentDirective(); @@ -4695,26 +4780,26 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { LexicalUnit exp; name = property(); jj_consume_token(COLON); - label_146: while (true) { + label_147: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[208] = jj_gen; - break label_146; + jj_la1[211] = jj_gen; + break label_147; } jj_consume_token(S); } jj_consume_token(LBRACE); - label_147: while (true) { + label_148: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[209] = jj_gen; - break label_147; + jj_la1[212] = jj_gen; + break label_148; } jj_consume_token(S); } @@ -4725,27 +4810,27 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { declaration(); break; default: - jj_la1[210] = jj_gen; + jj_la1[213] = jj_gen; ; } - label_148: while (true) { + label_149: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case SEMICOLON: ; break; default: - jj_la1[211] = jj_gen; - break label_148; + jj_la1[214] = jj_gen; + break label_149; } jj_consume_token(SEMICOLON); - label_149: while (true) { + label_150: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[212] = jj_gen; - break label_149; + jj_la1[215] = jj_gen; + break label_150; } jj_consume_token(S); } @@ -4755,20 +4840,20 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { declaration(); break; default: - jj_la1[213] = jj_gen; + jj_la1[216] = jj_gen; ; } } jj_consume_token(RBRACE); documentHandler.endNestedProperties(name); - label_150: while (true) { + label_151: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[214] = jj_gen; - break label_150; + jj_la1[217] = jj_gen; + break label_151; } jj_consume_token(S); } @@ -4787,7 +4872,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { debuggingDirective(); break; default: - jj_la1[215] = jj_gen; + jj_la1[218] = jj_gen; if (jj_2_6(2147483647)) { styleRule(); } else if (jj_2_7(3)) { @@ -4808,7 +4893,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { styleRule(); break; default: - jj_la1[216] = jj_gen; + jj_la1[219] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -4853,14 +4938,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { name = property(); save = token; jj_consume_token(COLON); - label_151: while (true) { + label_152: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[217] = jj_gen; - break label_151; + jj_la1[220] = jj_gen; + break label_152; } jj_consume_token(S); } @@ -4904,7 +4989,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { important = prio(); break; default: - jj_la1[218] = jj_gen; + jj_la1[221] = jj_gen; ; } Token next = getToken(1); @@ -4926,14 +5011,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { break; case LBRACE: jj_consume_token(LBRACE); - label_152: while (true) { + label_153: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[219] = jj_gen; - break label_152; + jj_la1[222] = jj_gen; + break label_153; } jj_consume_token(S); } @@ -4944,27 +5029,27 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { declaration(); break; default: - jj_la1[220] = jj_gen; + jj_la1[223] = jj_gen; ; } - label_153: while (true) { + label_154: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case SEMICOLON: ; break; default: - jj_la1[221] = jj_gen; - break label_153; + jj_la1[224] = jj_gen; + break label_154; } jj_consume_token(SEMICOLON); - label_154: while (true) { + label_155: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[222] = jj_gen; - break label_154; + jj_la1[225] = jj_gen; + break label_155; } jj_consume_token(S); } @@ -4974,26 +5059,26 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { declaration(); break; default: - jj_la1[223] = jj_gen; + jj_la1[226] = jj_gen; ; } } jj_consume_token(RBRACE); - label_155: while (true) { + label_156: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[224] = jj_gen; - break label_155; + jj_la1[227] = jj_gen; + break label_156; } jj_consume_token(S); } documentHandler.endNestedProperties(name); break; default: - jj_la1[225] = jj_gen; + jj_la1[228] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -5041,14 +5126,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { name = property(); save = token; jj_consume_token(COLON); - label_156: while (true) { + label_157: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[226] = jj_gen; - break label_156; + jj_la1[229] = jj_gen; + break label_157; } jj_consume_token(S); } @@ -5058,7 +5143,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { important = prio(); break; default: - jj_la1[227] = jj_gen; + jj_la1[230] = jj_gen; ; } documentHandler.property(name, exp, important); @@ -5099,14 +5184,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { */ final public boolean prio() throws ParseException { jj_consume_token(IMPORTANT_SYM); - label_157: while (true) { + label_158: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[228] = jj_gen; - break label_157; + jj_la1[231] = jj_gen; + break label_158; } jj_consume_token(S); } @@ -5120,14 +5205,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { final public boolean guarded() throws ParseException { jj_consume_token(GUARDED_SYM); - label_158: while (true) { + label_159: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[229] = jj_gen; - break label_158; + jj_la1[232] = jj_gen; + break label_159; } jj_consume_token(S); } @@ -5159,14 +5244,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { * parenthesis is not supported now. */ n = jj_consume_token(COMMA); - label_159: while (true) { + label_160: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[230] = jj_gen; - break label_159; + jj_la1[233] = jj_gen; + break label_160; } jj_consume_token(S); } @@ -5179,14 +5264,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { break; case DIV: n = jj_consume_token(DIV); - label_160: while (true) { + label_161: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[231] = jj_gen; - break label_160; + jj_la1[234] = jj_gen; + break label_161; } jj_consume_token(S); } @@ -5199,14 +5284,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { break; case ANY: n = jj_consume_token(ANY); - label_161: while (true) { + label_162: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[232] = jj_gen; - break label_161; + jj_la1[235] = jj_gen; + break label_162; } jj_consume_token(S); } @@ -5219,14 +5304,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { break; case MOD: n = jj_consume_token(MOD); - label_162: while (true) { + label_163: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[233] = jj_gen; - break label_162; + jj_la1[236] = jj_gen; + break label_163; } jj_consume_token(S); } @@ -5239,15 +5324,15 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { break; case PLUS: n = jj_consume_token(PLUS); - label_163: while (true) { + label_164: while (true) { jj_consume_token(S); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[234] = jj_gen; - break label_163; + jj_la1[237] = jj_gen; + break label_164; } } { @@ -5259,15 +5344,15 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { break; case MINUS: n = jj_consume_token(MINUS); - label_164: while (true) { + label_165: while (true) { jj_consume_token(S); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[235] = jj_gen; - break label_164; + jj_la1[238] = jj_gen; + break label_165; } } { @@ -5278,7 +5363,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } break; default: - jj_la1[236] = jj_gen; + jj_la1[239] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -5294,11 +5379,11 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { char op; first = term(null); res = first; - label_165: while (true) { + label_166: while (true) { if (jj_2_8(2)) { ; } else { - break label_165; + break label_166; } if (jj_2_9(2)) { res = operator(res); @@ -5338,7 +5423,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } break; default: - jj_la1[237] = jj_gen; + jj_la1[240] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -5393,7 +5478,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { result = variableTerm(prev); break; default: - jj_la1[238] = jj_gen; + jj_la1[241] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -5457,7 +5542,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { op = unaryOperator(); break; default: - jj_la1[239] = jj_gen; + jj_la1[242] = jj_gen; ; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { @@ -5564,15 +5649,16 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { && (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)); + n.beginColumn, prev, number(op, n, s.length() - i), + s.substring(i)); break; case FUNCTION: result = function(op, prev); break; default: - jj_la1[240] = jj_gen; + jj_la1[243] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -5604,7 +5690,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { s += "."; break; default: - jj_la1[241] = jj_gen; + jj_la1[244] = jj_gen; ; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { @@ -5621,7 +5707,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { n = jj_consume_token(FROM); break; default: - jj_la1[242] = jj_gen; + jj_la1[245] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -5659,24 +5745,24 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { result = unicode(prev); break; default: - jj_la1[243] = jj_gen; + jj_la1[246] = jj_gen; jj_consume_token(-1); throw new ParseException(); } break; default: - jj_la1[244] = jj_gen; + jj_la1[247] = jj_gen; jj_consume_token(-1); throw new ParseException(); } - label_166: while (true) { + label_167: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[245] = jj_gen; - break label_166; + jj_la1[248] = jj_gen; + break label_167; } jj_consume_token(S); } @@ -5699,14 +5785,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { Token n; LexicalUnit params = null; n = jj_consume_token(FUNCTION); - label_167: while (true) { + label_168: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[246] = jj_gen; - break label_167; + jj_la1[249] = jj_gen; + break label_168; } jj_consume_token(S); } @@ -5765,7 +5851,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { params = expr(); break; default: - jj_la1[247] = jj_gen; + jj_la1[250] = jj_gen; ; } jj_consume_token(RPARAN); @@ -6095,9 +6181,35 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return skipStatementUntil(lBrace); } - String skipStatementUntilRightParan() throws ParseException { - int[] rParan = { RPARAN }; - return skipStatementUntil(rParan); + String skipStatementUntilMatchingRightParan() throws ParseException { + int[] leftTokens = { LPARAN, FUNCTION }; // a FUNCTION also contains "(" + int[] rightTokens = { RPARAN }; + StringBuffer s = new StringBuffer(); + int difference = 1; + Token tok; + while (difference != 0) { + tok = getToken(1); + if (tok.kind == EOF) { + return null; + } + for (int sym : leftTokens) { + if (tok.kind == sym) { + difference++; + } + } + for (int sym : rightTokens) { + if (tok.kind == sym) { + difference--; + } + } + if (difference != 0) { + if (tok.image != null) { + s.append(tok.image); + } + getNextToken(); + } + } + return s.toString().trim(); } String skipStatementUntil(int[] symbols) throws ParseException { @@ -6308,14 +6420,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { // TODO required by original parser but not used by Vaadin? final public void _parseRule() throws ParseException { String ret = null; - label_168: while (true) { + label_169: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[248] = jj_gen; - break label_168; + jj_la1[251] = jj_gen; + break label_169; } jj_consume_token(S); } @@ -6350,7 +6462,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { fontFace(); break; default: - jj_la1[249] = jj_gen; + jj_la1[252] = jj_gen; ret = skipStatement(); if ((ret == null) || (ret.length() == 0)) { { @@ -6373,14 +6485,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } final public void _parseImportRule() throws ParseException { - label_169: while (true) { + label_170: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[250] = jj_gen; - break label_169; + jj_la1[253] = jj_gen; + break label_170; } jj_consume_token(S); } @@ -6388,14 +6500,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } final public void _parseMediaRule() throws ParseException { - label_170: while (true) { + label_171: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[251] = jj_gen; - break label_170; + jj_la1[254] = jj_gen; + break label_171; } jj_consume_token(S); } @@ -6403,14 +6515,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } final public void _parseDeclarationBlock() throws ParseException { - label_171: while (true) { + label_172: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[252] = jj_gen; - break label_171; + jj_la1[255] = jj_gen; + break label_172; } jj_consume_token(S); } @@ -6420,27 +6532,27 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { declaration(); break; default: - jj_la1[253] = jj_gen; + jj_la1[256] = jj_gen; ; } - label_172: while (true) { + label_173: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case SEMICOLON: ; break; default: - jj_la1[254] = jj_gen; - break label_172; + jj_la1[257] = jj_gen; + break label_173; } jj_consume_token(SEMICOLON); - label_173: while (true) { + label_174: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[255] = jj_gen; - break label_173; + jj_la1[258] = jj_gen; + break label_174; } jj_consume_token(S); } @@ -6450,7 +6562,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { declaration(); break; default: - jj_la1[256] = jj_gen; + jj_la1[259] = jj_gen; ; } } @@ -6459,14 +6571,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { final public ArrayList<String> _parseSelectors() throws ParseException { ArrayList<String> p = null; try { - label_174: while (true) { + label_175: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case S: ; break; default: - jj_la1[257] = jj_gen; - break label_174; + jj_la1[260] = jj_gen; + break label_175; } jj_consume_token(S); } @@ -6594,14 +6706,32 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } } - private boolean jj_3R_187() { - if (jj_3R_212()) { + private boolean jj_3R_209() { + 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_210() { + private boolean jj_3R_188() { + if (jj_3R_210()) { + return true; + } + return false; + } + + private boolean jj_3R_208() { if (jj_scan_token(PLUS)) { return true; } @@ -6619,7 +6749,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_209() { + private boolean jj_3R_207() { if (jj_scan_token(MOD)) { return true; } @@ -6634,7 +6764,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_208() { + private boolean jj_3R_206() { if (jj_scan_token(ANY)) { return true; } @@ -6649,7 +6779,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_207() { + private boolean jj_3R_205() { if (jj_scan_token(DIV)) { return true; } @@ -6664,7 +6794,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_206() { + private boolean jj_3R_204() { if (jj_scan_token(COMMA)) { return true; } @@ -6679,20 +6809,20 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_184() { + private boolean jj_3R_185() { Token xsp; xsp = jj_scanpos; - if (jj_3R_206()) { + if (jj_3R_204()) { jj_scanpos = xsp; - if (jj_3R_207()) { + if (jj_3R_205()) { jj_scanpos = xsp; - if (jj_3R_208()) { + if (jj_3R_206()) { jj_scanpos = xsp; - if (jj_3R_209()) { + if (jj_3R_207()) { jj_scanpos = xsp; - if (jj_3R_210()) { + if (jj_3R_208()) { jj_scanpos = xsp; - if (jj_3R_211()) { + if (jj_3R_209()) { return true; } } @@ -6703,18 +6833,25 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_214() { - if (jj_3R_213()) { + private boolean jj_3R_212() { + if (jj_3R_211()) { return true; } return false; } - private boolean jj_3R_212() { - if (jj_scan_token(GUARDED_SYM)) { - return true; - } + private boolean jj_3R_211() { 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)) { @@ -6725,18 +6862,23 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_213() { + private boolean jj_3R_191() { + if (jj_scan_token(S)) { + return true; + } Token xsp; xsp = jj_scanpos; - if (jj_scan_token(18)) { + if (jj_3R_212()) { jj_scanpos = xsp; - if (jj_scan_token(22)) { - jj_scanpos = xsp; - if (jj_scan_token(23)) { - return true; - } - } } + return false; + } + + private boolean jj_3R_210() { + if (jj_scan_token(GUARDED_SYM)) { + return true; + } + Token xsp; while (true) { xsp = jj_scanpos; if (jj_scan_token(1)) { @@ -6747,8 +6889,8 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_175() { - if (jj_3R_185()) { + private boolean jj_3R_176() { + if (jj_3R_186()) { return true; } if (jj_scan_token(COLON)) { @@ -6762,19 +6904,19 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { break; } } - if (jj_3R_186()) { + if (jj_3R_187()) { return true; } xsp = jj_scanpos; - if (jj_3R_187()) { + if (jj_3R_188()) { jj_scanpos = xsp; } - if (jj_3R_188()) { + if (jj_3R_189()) { return true; } while (true) { xsp = jj_scanpos; - if (jj_3R_188()) { + if (jj_3R_189()) { jj_scanpos = xsp; break; } @@ -6783,37 +6925,25 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } private boolean jj_3R_190() { - if (jj_scan_token(S)) { + if (jj_3R_211()) { return true; } - Token xsp; - xsp = jj_scanpos; - if (jj_3R_214()) { - jj_scanpos = xsp; - } return false; } - private boolean jj_3R_189() { - if (jj_3R_213()) { - return true; - } - return false; - } - - private boolean jj_3R_176() { + private boolean jj_3R_177() { Token xsp; xsp = jj_scanpos; - if (jj_3R_189()) { + if (jj_3R_190()) { jj_scanpos = xsp; - if (jj_3R_190()) { + if (jj_3R_191()) { return true; } } return false; } - private boolean jj_3R_196() { + private boolean jj_3R_194() { if (jj_scan_token(VARIABLE)) { return true; } @@ -6838,10 +6968,10 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_178() { + private boolean jj_3R_179() { Token xsp; xsp = jj_scanpos; - if (jj_3R_196()) { + if (jj_3R_194()) { jj_scanpos = xsp; } if (jj_scan_token(CONTAINS)) { @@ -6862,21 +6992,21 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_216() { + private boolean jj_3R_262() { if (jj_scan_token(HASH)) { return true; } return false; } - private boolean jj_3R_286() { + private boolean jj_3R_279() { if (jj_scan_token(IDENT)) { return true; } return false; } - private boolean jj_3R_287() { + private boolean jj_3R_280() { if (jj_scan_token(FUNCTION)) { return true; } @@ -6896,26 +7026,26 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_285() { + private boolean jj_3R_278() { if (jj_scan_token(COLON)) { return true; } return false; } - private boolean jj_3R_218() { + private boolean jj_3R_265() { if (jj_scan_token(COLON)) { return true; } Token xsp; xsp = jj_scanpos; - if (jj_3R_285()) { + if (jj_3R_278()) { jj_scanpos = xsp; } xsp = jj_scanpos; - if (jj_3R_286()) { + if (jj_3R_279()) { jj_scanpos = xsp; - if (jj_3R_287()) { + if (jj_3R_280()) { return true; } } @@ -6923,103 +7053,103 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } private boolean jj_3_7() { - if (jj_3R_182()) { + if (jj_3R_183()) { return true; } return false; } - private boolean jj_3R_203() { + private boolean jj_3R_201() { if (jj_scan_token(LBRACE)) { return true; } return false; } - private boolean jj_3R_306() { + private boolean jj_3R_290() { if (jj_scan_token(STRING)) { return true; } return false; } - private boolean jj_3R_304() { + private boolean jj_3R_288() { if (jj_scan_token(STARMATCH)) { return true; } return false; } - private boolean jj_3R_305() { - if (jj_scan_token(IDENT)) { + private boolean jj_3R_287() { + if (jj_scan_token(DOLLARMATCH)) { return true; } return false; } - private boolean jj_3R_303() { - if (jj_scan_token(DOLLARMATCH)) { + private boolean jj_3R_289() { + if (jj_scan_token(IDENT)) { return true; } return false; } - private boolean jj_3R_302() { + private boolean jj_3R_286() { if (jj_scan_token(CARETMATCH)) { return true; } return false; } - private boolean jj_3R_301() { + private boolean jj_3R_285() { if (jj_scan_token(DASHMATCH)) { return true; } return false; } - private boolean jj_3R_300() { + private boolean jj_3R_284() { if (jj_scan_token(INCLUDES)) { return true; } return false; } - private boolean jj_3R_267() { + private boolean jj_3R_270() { if (jj_scan_token(INTERPOLATION)) { return true; } return false; } - private boolean jj_3R_299() { + private boolean jj_3R_283() { if (jj_scan_token(EQ)) { return true; } return false; } - private boolean jj_3R_202() { - if (jj_3R_186()) { + private boolean jj_3R_200() { + if (jj_3R_187()) { return true; } return false; } - private boolean jj_3R_292() { + private boolean jj_3R_277() { Token xsp; xsp = jj_scanpos; - if (jj_3R_299()) { + if (jj_3R_283()) { jj_scanpos = xsp; - if (jj_3R_300()) { + if (jj_3R_284()) { jj_scanpos = xsp; - if (jj_3R_301()) { + if (jj_3R_285()) { jj_scanpos = xsp; - if (jj_3R_302()) { + if (jj_3R_286()) { jj_scanpos = xsp; - if (jj_3R_303()) { + if (jj_3R_287()) { jj_scanpos = xsp; - if (jj_3R_304()) { + if (jj_3R_288()) { return true; } } @@ -7035,9 +7165,9 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } } xsp = jj_scanpos; - if (jj_3R_305()) { + if (jj_3R_289()) { jj_scanpos = xsp; - if (jj_3R_306()) { + if (jj_3R_290()) { return true; } } @@ -7052,7 +7182,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } private boolean jj_3_6() { - if (jj_3R_181()) { + if (jj_3R_182()) { return true; } if (jj_scan_token(LBRACE)) { @@ -7061,7 +7191,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_219() { + private boolean jj_3R_264() { if (jj_scan_token(LBRACKET)) { return true; } @@ -7084,7 +7214,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } } xsp = jj_scanpos; - if (jj_3R_292()) { + if (jj_3R_277()) { jj_scanpos = xsp; } if (jj_scan_token(RBRACKET)) { @@ -7093,8 +7223,8 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_182() { - if (jj_3R_201()) { + private boolean jj_3R_183() { + if (jj_3R_199()) { return true; } if (jj_scan_token(COLON)) { @@ -7109,70 +7239,70 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } } xsp = jj_scanpos; - if (jj_3R_202()) { + if (jj_3R_200()) { jj_scanpos = xsp; - if (jj_3R_203()) { + if (jj_3R_201()) { return true; } } return false; } - private boolean jj_3R_298() { + private boolean jj_3R_282() { if (jj_scan_token(INTERPOLATION)) { return true; } return false; } - private boolean jj_3R_265() { - if (jj_3R_186()) { + private boolean jj_3R_268() { + if (jj_3R_187()) { return true; } return false; } - private boolean jj_3R_253() { + private boolean jj_3R_248() { if (jj_scan_token(PARENT)) { return true; } return false; } - private boolean jj_3R_252() { + private boolean jj_3R_247() { if (jj_scan_token(ANY)) { return true; } return false; } - private boolean jj_3R_262() { + private boolean jj_3R_261() { Token xsp; xsp = jj_scanpos; - if (jj_3R_266()) { + if (jj_3R_269()) { jj_scanpos = xsp; - if (jj_3R_267()) { + if (jj_3R_270()) { return true; } } return false; } - private boolean jj_3R_266() { + private boolean jj_3R_269() { if (jj_scan_token(IDENT)) { return true; } return false; } - private boolean jj_3R_215() { + private boolean jj_3R_213() { Token xsp; xsp = jj_scanpos; - if (jj_3R_251()) { + if (jj_3R_246()) { jj_scanpos = xsp; - if (jj_3R_252()) { + if (jj_3R_247()) { jj_scanpos = xsp; - if (jj_3R_253()) { + if (jj_3R_248()) { return true; } } @@ -7180,14 +7310,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_251() { + private boolean jj_3R_246() { Token xsp; - if (jj_3R_262()) { + if (jj_3R_261()) { return true; } while (true) { xsp = jj_scanpos; - if (jj_3R_262()) { + if (jj_3R_261()) { jj_scanpos = xsp; break; } @@ -7195,7 +7325,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_255() { + private boolean jj_3R_254() { if (jj_scan_token(FUNCTION)) { return true; } @@ -7208,7 +7338,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } } xsp = jj_scanpos; - if (jj_3R_265()) { + if (jj_3R_268()) { jj_scanpos = xsp; } if (jj_scan_token(RPARAN)) { @@ -7217,7 +7347,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_179() { + private boolean jj_3R_180() { if (jj_scan_token(COMMA)) { return true; } @@ -7232,48 +7362,41 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_297() { - if (jj_scan_token(IDENT)) { - return true; - } - return false; - } - - private boolean jj_3R_246() { - if (jj_3R_259()) { + private boolean jj_3R_241() { + if (jj_3R_258()) { return true; } return false; } - private boolean jj_3R_280() { + private boolean jj_3R_276() { Token xsp; xsp = jj_scanpos; - if (jj_3R_297()) { + if (jj_3R_281()) { jj_scanpos = xsp; - if (jj_3R_298()) { + if (jj_3R_282()) { return true; } } return false; } - private boolean jj_3R_245() { - if (jj_3R_258()) { + private boolean jj_3R_281() { + if (jj_scan_token(IDENT)) { return true; } return false; } - private boolean jj_3R_296() { - if (jj_3R_218()) { + private boolean jj_3R_240() { + if (jj_3R_257()) { return true; } return false; } - private boolean jj_3R_244() { - if (jj_3R_257()) { + private boolean jj_3R_239() { + if (jj_3R_256()) { return true; } return false; @@ -7282,26 +7405,26 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { private boolean jj_3_5() { Token xsp; xsp = jj_scanpos; - if (jj_3R_179()) { + if (jj_3R_180()) { jj_scanpos = xsp; } - if (jj_3R_180()) { + if (jj_3R_181()) { return true; } return false; } - private boolean jj_3R_217() { + private boolean jj_3R_263() { if (jj_scan_token(DOT)) { return true; } Token xsp; - if (jj_3R_280()) { + if (jj_3R_276()) { return true; } while (true) { xsp = jj_scanpos; - if (jj_3R_280()) { + if (jj_3R_276()) { jj_scanpos = xsp; break; } @@ -7309,65 +7432,65 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_294() { - if (jj_3R_217()) { + private boolean jj_3R_252() { + if (jj_3R_265()) { return true; } return false; } - private boolean jj_3R_289() { - if (jj_3R_217()) { + private boolean jj_3R_275() { + if (jj_3R_265()) { return true; } return false; } - private boolean jj_3R_291() { - if (jj_3R_218()) { + private boolean jj_3R_273() { + if (jj_3R_263()) { return true; } return false; } - private boolean jj_3R_279() { - if (jj_3R_218()) { + private boolean jj_3R_250() { + if (jj_3R_263()) { return true; } return false; } - private boolean jj_3R_282() { - if (jj_3R_217()) { + private boolean jj_3R_251() { + if (jj_3R_264()) { return true; } return false; } - private boolean jj_3R_284() { - if (jj_3R_218()) { + private boolean jj_3R_274() { + if (jj_3R_264()) { return true; } return false; } - private boolean jj_3R_295() { - if (jj_3R_219()) { + private boolean jj_3R_255() { + if (jj_scan_token(DOT)) { return true; } return false; } - private boolean jj_3R_272() { + private boolean jj_3R_271() { Token xsp; xsp = jj_scanpos; - if (jj_3R_293()) { + if (jj_3R_272()) { jj_scanpos = xsp; - if (jj_3R_294()) { + if (jj_3R_273()) { jj_scanpos = xsp; - if (jj_3R_295()) { + if (jj_3R_274()) { jj_scanpos = xsp; - if (jj_3R_296()) { + if (jj_3R_275()) { return true; } } @@ -7376,55 +7499,27 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_293() { - if (jj_3R_216()) { + private boolean jj_3R_272() { + if (jj_3R_262()) { return true; } return false; } - private boolean jj_3R_271() { + private boolean jj_3R_238() { Token xsp; xsp = jj_scanpos; - if (jj_3R_288()) { + if (jj_3R_255()) { jj_scanpos = xsp; - if (jj_3R_289()) { - jj_scanpos = xsp; - if (jj_3R_290()) { - jj_scanpos = xsp; - if (jj_3R_291()) { - return true; - } - } - } - } - return false; - } - - private boolean jj_3R_288() { - if (jj_3R_216()) { - return true; } - return false; - } - - private boolean jj_3R_276() { - if (jj_3R_218()) { - return true; - } - return false; - } - - private boolean jj_3R_270() { - Token xsp; xsp = jj_scanpos; - if (jj_3R_281()) { + if (jj_scan_token(72)) { jj_scanpos = xsp; - if (jj_3R_282()) { + if (jj_scan_token(49)) { jj_scanpos = xsp; - if (jj_3R_283()) { + if (jj_scan_token(50)) { jj_scanpos = xsp; - if (jj_3R_284()) { + if (jj_scan_token(52)) { return true; } } @@ -7433,84 +7528,23 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_281() { - if (jj_3R_216()) { - return true; - } - return false; - } - - private boolean jj_3R_290() { - if (jj_3R_219()) { - return true; - } - return false; - } - - private boolean jj_3R_278() { - if (jj_3R_219()) { - return true; - } - return false; - } - - private boolean jj_3R_283() { - if (jj_3R_219()) { - return true; - } - return false; - } - - private boolean jj_3R_269() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_277()) { - jj_scanpos = xsp; - if (jj_3R_278()) { - jj_scanpos = xsp; - if (jj_3R_279()) { - return true; - } - } - } - return false; - } - - private boolean jj_3R_274() { - if (jj_3R_217()) { - return true; - } - return false; - } - - private boolean jj_3R_277() { - if (jj_3R_217()) { - return true; - } - return false; - } - - private boolean jj_3R_256() { - if (jj_scan_token(DOT)) { + private boolean jj_3R_237() { + if (jj_scan_token(STRING)) { return true; } return false; } - private boolean jj_3R_243() { + private boolean jj_3R_214() { Token xsp; xsp = jj_scanpos; - if (jj_3R_256()) { - jj_scanpos = xsp; - } - xsp = jj_scanpos; - if (jj_scan_token(72)) { + if (jj_3R_249()) { jj_scanpos = xsp; - if (jj_scan_token(49)) { + if (jj_3R_250()) { jj_scanpos = xsp; - if (jj_scan_token(50)) { + if (jj_3R_251()) { jj_scanpos = xsp; - if (jj_scan_token(52)) { + if (jj_3R_252()) { return true; } } @@ -7519,47 +7553,32 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_242() { - if (jj_scan_token(STRING)) { + private boolean jj_3R_249() { + if (jj_3R_262()) { 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_241() { - if (jj_3R_255()) { + private boolean jj_3R_236() { + if (jj_3R_254()) { return true; } return false; } - private boolean jj_3R_198() { + private boolean jj_3R_196() { Token xsp; xsp = jj_scanpos; - if (jj_3R_242()) { + if (jj_3R_237()) { jj_scanpos = xsp; - if (jj_3R_243()) { + if (jj_3R_238()) { jj_scanpos = xsp; - if (jj_3R_244()) { + if (jj_3R_239()) { jj_scanpos = xsp; - if (jj_3R_245()) { + if (jj_3R_240()) { jj_scanpos = xsp; - if (jj_3R_246()) { + if (jj_3R_241()) { return true; } } @@ -7569,36 +7588,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { 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; - } - } - return false; - } - - private boolean jj_3R_275() { - if (jj_3R_219()) { - return true; - } - return false; - } - private boolean jj_3R_193() { - if (jj_3R_217()) { + Token xsp; + if (jj_3R_214()) { return true; } - Token xsp; while (true) { xsp = jj_scanpos; - if (jj_3R_270()) { + if (jj_3R_214()) { jj_scanpos = xsp; break; } @@ -7607,13 +7604,13 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } private boolean jj_3R_192() { - if (jj_3R_216()) { + if (jj_3R_213()) { return true; } Token xsp; while (true) { xsp = jj_scanpos; - if (jj_3R_269()) { + if (jj_3R_271()) { jj_scanpos = xsp; break; } @@ -7621,186 +7618,123 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_268() { + private boolean jj_3R_178() { Token xsp; xsp = jj_scanpos; - if (jj_3R_273()) { + if (jj_3R_192()) { jj_scanpos = xsp; - if (jj_3R_274()) { - jj_scanpos = xsp; - if (jj_3R_275()) { - jj_scanpos = xsp; - if (jj_3R_276()) { - return true; - } - } + if (jj_3R_193()) { + return true; } } return false; } - private boolean jj_3R_273() { - if (jj_3R_216()) { + private boolean jj_3R_243() { + if (jj_3R_211()) { return true; } - return false; - } - - private boolean jj_3R_191() { - if (jj_3R_215()) { + if (jj_3R_178()) { return true; } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3R_268()) { - jj_scanpos = xsp; - break; - } - } return false; } - private boolean jj_3R_240() { + private boolean jj_3R_235() { if (jj_scan_token(DIMEN)) { return true; } return false; } - private boolean jj_3R_177() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_191()) { - jj_scanpos = xsp; - 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()) { - return true; - } - } - } - } - } - return false; - } - - private boolean jj_3R_239() { + private boolean jj_3R_234() { if (jj_scan_token(KHZ)) { return true; } return false; } - private boolean jj_3R_248() { - if (jj_3R_213()) { - return true; - } - if (jj_3R_177()) { - return true; - } - return false; - } - - private boolean jj_3R_238() { + private boolean jj_3R_233() { if (jj_scan_token(HZ)) { return true; } return false; } - private boolean jj_3R_237() { + private boolean jj_3R_232() { if (jj_scan_token(MS)) { return true; } return false; } - private boolean jj_3R_236() { + private boolean jj_3R_231() { if (jj_scan_token(SECOND)) { return true; } return false; } - private boolean jj_3R_235() { + private boolean jj_3R_230() { if (jj_scan_token(GRAD)) { return true; } return false; } - private boolean jj_3R_234() { + private boolean jj_3R_229() { if (jj_scan_token(RAD)) { return true; } return false; } - private boolean jj_3R_233() { + private boolean jj_3R_228() { if (jj_scan_token(DEG)) { return true; } return false; } - private boolean jj_3R_232() { + private boolean jj_3R_227() { if (jj_scan_token(EXS)) { return true; } return false; } - private boolean jj_3R_231() { + private boolean jj_3R_226() { if (jj_scan_token(REM)) { return true; } return false; } - private boolean jj_3R_230() { - if (jj_scan_token(LEM)) { - return true; - } - return false; - } - - private boolean jj_3R_229() { - if (jj_scan_token(EMS)) { - return true; - } - return false; - } - private boolean jj_3_2() { - if (jj_3R_176()) { + if (jj_3R_177()) { return true; } - if (jj_3R_177()) { + if (jj_3R_178()) { return true; } return false; } - private boolean jj_3R_228() { - if (jj_scan_token(PX)) { + private boolean jj_3R_225() { + if (jj_scan_token(LEM)) { return true; } return false; } - private boolean jj_3R_227() { - if (jj_scan_token(IN)) { + private boolean jj_3R_224() { + if (jj_scan_token(EMS)) { return true; } return false; } - private boolean jj_3R_200() { + private boolean jj_3R_198() { if (jj_scan_token(COMMA)) { return true; } @@ -7812,39 +7746,39 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { break; } } - if (jj_3R_199()) { + if (jj_3R_197()) { return true; } return false; } - private boolean jj_3R_247() { - if (jj_3R_177()) { + private boolean jj_3R_242() { + if (jj_3R_178()) { return true; } return false; } - private boolean jj_3R_226() { - if (jj_scan_token(PC)) { + private boolean jj_3R_223() { + if (jj_scan_token(PX)) { return true; } return false; } - private boolean jj_3R_225() { - if (jj_scan_token(MM)) { + private boolean jj_3R_222() { + if (jj_scan_token(IN)) { return true; } return false; } - private boolean jj_3R_199() { + private boolean jj_3R_197() { Token xsp; xsp = jj_scanpos; - if (jj_3R_247()) { + if (jj_3R_242()) { jj_scanpos = xsp; - if (jj_3R_248()) { + if (jj_3R_243()) { return true; } } @@ -7865,103 +7799,132 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_224() { + private boolean jj_3R_221() { + if (jj_scan_token(PC)) { + return true; + } + return false; + } + + private boolean jj_3R_220() { + if (jj_scan_token(MM)) { + return true; + } + return false; + } + + private boolean jj_3R_219() { if (jj_scan_token(CM)) { return true; } return false; } - private boolean jj_3R_223() { + private boolean jj_3R_218() { if (jj_scan_token(PT)) { return true; } return false; } - private boolean jj_3R_222() { + private boolean jj_3R_217() { if (jj_scan_token(PERCENTAGE)) { return true; } return false; } - private boolean jj_3R_205() { - if (jj_3R_250()) { + private boolean jj_3R_203() { + if (jj_3R_245()) { return true; } return false; } - private boolean jj_3R_221() { - if (jj_scan_token(NUMBER)) { + private boolean jj_3_1() { + if (jj_3R_176()) { return true; } return false; } - private boolean jj_3R_220() { - if (jj_3R_254()) { + private boolean jj_3R_182() { + if (jj_3R_197()) { return true; } + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_3R_198()) { + jj_scanpos = xsp; + break; + } + } return false; } - private boolean jj_3_1() { - if (jj_3R_175()) { + private boolean jj_3R_216() { + if (jj_scan_token(NUMBER)) { return true; } return false; } - private boolean jj_3R_197() { + private boolean jj_3R_215() { + if (jj_3R_253()) { + return true; + } + return false; + } + + private boolean jj_3R_195() { Token xsp; xsp = jj_scanpos; - if (jj_3R_220()) { + if (jj_3R_215()) { jj_scanpos = xsp; } xsp = jj_scanpos; - if (jj_3R_221()) { + if (jj_3R_216()) { jj_scanpos = xsp; - if (jj_3R_222()) { + if (jj_3R_217()) { jj_scanpos = xsp; - if (jj_3R_223()) { + if (jj_3R_218()) { jj_scanpos = xsp; - if (jj_3R_224()) { + if (jj_3R_219()) { jj_scanpos = xsp; - if (jj_3R_225()) { + if (jj_3R_220()) { jj_scanpos = xsp; - if (jj_3R_226()) { + if (jj_3R_221()) { jj_scanpos = xsp; - if (jj_3R_227()) { + if (jj_3R_222()) { jj_scanpos = xsp; - if (jj_3R_228()) { + if (jj_3R_223()) { jj_scanpos = xsp; - if (jj_3R_229()) { + if (jj_3R_224()) { jj_scanpos = xsp; - if (jj_3R_230()) { + if (jj_3R_225()) { jj_scanpos = xsp; - if (jj_3R_231()) { + if (jj_3R_226()) { jj_scanpos = xsp; - if (jj_3R_232()) { + if (jj_3R_227()) { jj_scanpos = xsp; - if (jj_3R_233()) { + if (jj_3R_228()) { jj_scanpos = xsp; - if (jj_3R_234()) { + if (jj_3R_229()) { jj_scanpos = xsp; - if (jj_3R_235()) { + if (jj_3R_230()) { jj_scanpos = xsp; - if (jj_3R_236()) { + if (jj_3R_231()) { jj_scanpos = xsp; - if (jj_3R_237()) { + if (jj_3R_232()) { jj_scanpos = xsp; - if (jj_3R_238()) { + if (jj_3R_233()) { jj_scanpos = xsp; - if (jj_3R_239()) { + if (jj_3R_234()) { jj_scanpos = xsp; - if (jj_3R_240()) { + if (jj_3R_235()) { jj_scanpos = xsp; - if (jj_3R_241()) { + if (jj_3R_236()) { return true; } } @@ -7988,26 +7951,11 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } private boolean jj_3R_181() { - if (jj_3R_199()) { - return true; - } - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3R_200()) { - jj_scanpos = xsp; - break; - } - } - return false; - } - - private boolean jj_3R_180() { Token xsp; xsp = jj_scanpos; - if (jj_3R_197()) { + if (jj_3R_195()) { jj_scanpos = xsp; - if (jj_3R_198()) { + if (jj_3R_196()) { return true; } } @@ -8021,7 +7969,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_257() { + private boolean jj_3R_256() { if (jj_scan_token(HASH)) { return true; } @@ -8029,39 +7977,46 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } private boolean jj_3_4() { - if (jj_3R_178()) { + if (jj_3R_179()) { return true; } return false; } - private boolean jj_3R_250() { - if (jj_3R_185()) { + private boolean jj_3R_245() { + if (jj_3R_186()) { return true; } return false; } - private boolean jj_3R_258() { + private boolean jj_3R_257() { if (jj_scan_token(URL)) { return true; } return false; } - private boolean jj_3R_204() { - if (jj_3R_180()) { + private boolean jj_3R_202() { + if (jj_3R_181()) { return true; } return false; } - private boolean jj_3R_183() { + private boolean jj_3R_260() { + if (jj_scan_token(INTERPOLATION)) { + return true; + } + return false; + } + + private boolean jj_3R_184() { Token xsp; xsp = jj_scanpos; - if (jj_3R_204()) { + if (jj_3R_202()) { jj_scanpos = xsp; - if (jj_3R_205()) { + if (jj_3R_203()) { return true; } } @@ -8069,53 +8024,46 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } private boolean jj_3_9() { - if (jj_3R_184()) { - return true; - } - return false; - } - - private boolean jj_3R_261() { - if (jj_scan_token(INTERPOLATION)) { + if (jj_3R_185()) { return true; } return false; } private boolean jj_3_3() { - if (jj_3R_175()) { + if (jj_3R_176()) { return true; } return false; } - private boolean jj_3R_264() { + private boolean jj_3R_267() { if (jj_scan_token(PLUS)) { return true; } return false; } - private boolean jj_3R_254() { + private boolean jj_3R_253() { Token xsp; xsp = jj_scanpos; - if (jj_3R_263()) { + if (jj_3R_266()) { jj_scanpos = xsp; - if (jj_3R_264()) { + if (jj_3R_267()) { return true; } } return false; } - private boolean jj_3R_263() { + private boolean jj_3R_266() { if (jj_scan_token(MINUS)) { return true; } return false; } - private boolean jj_3R_259() { + private boolean jj_3R_258() { if (jj_scan_token(UNICODERANGE)) { return true; } @@ -8128,14 +8076,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { if (jj_3_9()) { jj_scanpos = xsp; } - if (jj_3R_183()) { + if (jj_3R_184()) { return true; } return false; } - private boolean jj_3R_188() { - if (jj_scan_token(SEMICOLON)) { + private boolean jj_3R_186() { + if (jj_scan_token(VARIABLE)) { return true; } Token xsp; @@ -8149,14 +8097,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_186() { - if (jj_3R_183()) { + private boolean jj_3R_189() { + if (jj_scan_token(SEMICOLON)) { return true; } Token xsp; while (true) { xsp = jj_scanpos; - if (jj_3_8()) { + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } @@ -8164,14 +8112,14 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_185() { - if (jj_scan_token(VARIABLE)) { + private boolean jj_3R_187() { + if (jj_3R_184()) { return true; } Token xsp; while (true) { xsp = jj_scanpos; - if (jj_scan_token(1)) { + if (jj_3_8()) { jj_scanpos = xsp; break; } @@ -8179,33 +8127,33 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_249() { + private boolean jj_3R_244() { Token xsp; xsp = jj_scanpos; - if (jj_3R_260()) { + if (jj_3R_259()) { jj_scanpos = xsp; - if (jj_3R_261()) { + if (jj_3R_260()) { return true; } } return false; } - private boolean jj_3R_260() { + private boolean jj_3R_259() { if (jj_scan_token(IDENT)) { return true; } return false; } - private boolean jj_3R_201() { + private boolean jj_3R_199() { Token xsp; - if (jj_3R_249()) { + if (jj_3R_244()) { return true; } while (true) { xsp = jj_scanpos; - if (jj_3R_249()) { + if (jj_3R_244()) { jj_scanpos = xsp; break; } @@ -8220,24 +8168,6 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { return false; } - private boolean jj_3R_211() { - 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; - } - /** Generated Token Manager. */ public ParserTokenManager token_source; /** Current token. */ @@ -8248,7 +8178,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { private Token jj_scanpos, jj_lastpos; private int jj_la; private int jj_gen; - final private int[] jj_la1 = new int[258]; + 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; @@ -8263,117 +8193,117 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { 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, 0x2, 0x0, 0x2, 0x134e0002, 0x0, - 0x2, 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, 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, }; + 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, 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, 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, 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, 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, 0x0, 0x80000000, 0x0, 0x3f, 0x0, 0x0, - 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, 0x60000c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, + 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, - 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, }; + 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, 0x0, 0x0, 0x0, 0x1300, - 0x20, 0x0, 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, 0x100, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 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, + 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, - 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, }; + 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, 0x45, 0x45, 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, 0x47, 0x47, 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, 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, 0x400000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x45, 0x0, - 0x200000, 0x0, 0x45, 0x0, 0x0, 0x0, 0x200000, 0x0, 0x0, 0x45, - 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x45, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x400000, 0x0, 0x75, 0x75, 0x0, 0x0, 0x0, 0x0, - 0x0, 0x0, 0x0, 0x0, 0x440001, 0x0, 0x0, 0x0, 0x0, 0x440001, - 0x0, 0x0, 0x0, 0x400000, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, - 0x0, 0x380000, 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, 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, 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, }; + 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]; @@ -8386,7 +8316,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 258; i++) { + for (int i = 0; i < 261; i++) { jj_la1[i] = -1; } for (int i = 0; i < jj_2_rtns.length; i++) { @@ -8400,7 +8330,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 258; i++) { + for (int i = 0; i < 261; i++) { jj_la1[i] = -1; } for (int i = 0; i < jj_2_rtns.length; i++) { @@ -8414,7 +8344,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 258; i++) { + for (int i = 0; i < 261; i++) { jj_la1[i] = -1; } for (int i = 0; i < jj_2_rtns.length; i++) { @@ -8428,7 +8358,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 258; i++) { + for (int i = 0; i < 261; i++) { jj_la1[i] = -1; } for (int i = 0; i < jj_2_rtns.length; i++) { @@ -8579,7 +8509,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { la1tokens[jj_kind] = true; jj_kind = -1; } - for (int i = 0; i < 258; i++) { + 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) { 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 28ad653ef4..5fb7f2315f 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.jj +++ b/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.jj @@ -559,7 +559,7 @@ TOKEN : /* basic tokens */ ( <H> )? ( <H> )? ( [ " ", "\t" , "\n" , "\r", "\f" ] )? > | < #ESCAPE : <UNICODE> | ( "\\" [ " "-"~","\200"-"\377" ] ) > - | < #NMSTART : ("-")?[ "a"-"z"] | <NONASCII> | <ESCAPE> > + | < #NMSTART : ("-")?[ "a"-"z","_"] | <NONASCII> | <ESCAPE> > | < #NMCHAR : ["a"-"z", "0"-"9", "-", "_"] | <NONASCII> | <ESCAPE> > | < #STRINGCHAR : [ "\t"," ","!","#","$","%","&","("-"~" ] | "\\\n" | "\\\r\n" | "\\\r" | "\\\f" @@ -848,7 +848,7 @@ void keyframes() : n=<KEY_FRAME_SYM> ( <S> )* {keyframeName = n.image;} (n = <IDENT>{animationname += n.image; }|n = < INTERPOLATION >{ animationname += n.image; })+(<S>)* {start = true; documentHandler.startKeyFrames(keyframeName, animationname); } - <LBRACE> ( <S> )* ( keyframeSelector() )* <RBRACE> ( <S> )* + <LBRACE> ( <S> )* ( keyframeSelector() | contentDirective() )* <RBRACE> ( <S> )* } catch (ParseException e) { reportError(getLocator(), e); skipStatement(); @@ -862,14 +862,17 @@ void keyframes() : void keyframeSelector(): { Token n; + String selector = ""; boolean start = false; } { try{ - (n = <FROM> | n = <TO> | n = <PERCENTAGE>) (<S>)* <LBRACE> (<S>)* + (n = <FROM> | n = <TO> | n = <PERCENTAGE>){selector += n.image;} (<S>)* + (<COMMA> (<S>)* (n = <FROM> | n = <TO> | n = <PERCENTAGE>) {selector += (", " + n.image);} (<S>)* )* + <LBRACE> (<S>)* { start = true; - documentHandler.startKeyframeSelector(n.image); + documentHandler.startKeyframeSelector(selector); } (ifContentStatement() | microsoftExtension() )* <RBRACE> (<S>)* @@ -1269,18 +1272,12 @@ String simple_selector(String selector, char comb) : pseudoElt = null; } { - ( simple_current=element_name() - ( cond=hash(cond) | cond=_class(cond) - | cond=attrib(cond) | cond=pseudo(cond) )* - | cond=hash(cond) ( cond=_class(cond) - | cond=attrib(cond) | cond=pseudo(cond) )* - | cond=_class(cond) ( cond=hash(cond) | cond=_class(cond) - | cond=attrib(cond) | cond=pseudo(cond) )* - | cond=pseudo(cond) ( cond=hash(cond) | cond=_class(cond) - | cond=attrib(cond) | cond=pseudo(cond) )* - | cond=attrib(cond) ( cond=hash(cond) | cond=_class(cond) - | cond=attrib(cond) | cond=pseudo(cond) )* - ) + ( (simple_current=element_name() + ( cond=hash(cond) | cond=_class(cond) + | cond=attrib(cond) | cond=pseudo(cond) )* ) + | ( cond = hash(cond) | cond=_class(cond) + | cond=attrib(cond) | cond=pseudo(cond) )+ + ) { if (simple_current == null) { simple_current = ""; @@ -1442,7 +1439,7 @@ boolean isPseudoElement = false; } } } - | ( n=<FUNCTION> ( <S> )* d=skipStatementUntilRightParan() <RPARAN> + | ( n=<FUNCTION> ( <S> )* d=skipStatementUntilMatchingRightParan() <RPARAN> { // accept anything between function and a right parenthesis String f = convertIdent(n.image); @@ -1526,8 +1523,8 @@ void controlDirective() : void ifContentStatement() : {} { - contentDirective() | includeDirective() | media() | extendDirective() | styleRuleOrDeclarationOrNestedProperties() - | keyframes() | LOOKAHEAD(variable()) variable() | listModifyDirective() | controlDirective() + contentDirective() | includeDirective() | media() | extendDirective() | styleRuleOrDeclarationOrNestedProperties() + | keyframes() | LOOKAHEAD(variable()) variable() | listModifyDirective() | controlDirective() | atRuleDeclaration() } void ifDirective() : @@ -1543,7 +1540,7 @@ void ifDirective() : { documentHandler.startIfElseDirective(); documentHandler.ifDirective(evaluator); } - ( ifContentStatement() )* + ( ifContentStatement() | fontFace() )* < RBRACE >(< S >)* (elseDirective())* { documentHandler.endIfElseDirective(); } @@ -1562,7 +1559,7 @@ void elseDirective() : { if(!evaluator.trim().equals("")){ documentHandler.ifDirective(evaluator); } else{ documentHandler.elseDirective(); } } - ( ifContentStatement() )* + ( ifContentStatement() | fontFace() )* < RBRACE >(< S >)* } @@ -1726,11 +1723,11 @@ void includeDirective() : (<S>)* (name = property()|name = variableName(){ name = "$"+name;} |(name = functionName() - args = argValuelist()) <RPARAN>) + args = argValuelist()) <RPARAN>(<S>)*) ((";"(<S>)*)+ {documentHandler.includeDirective(name, args);} - | <LBRACE> (<S>)* {documentHandler.startIncludeContentBlock(name);} - (styleRuleOrDeclarationOrNestedProperties())* + | <LBRACE> (<S>)* {documentHandler.startIncludeContentBlock(name, args);} + (styleRuleOrDeclarationOrNestedProperties() | keyframeSelector())* <RBRACE> (<S>)* {documentHandler.endIncludeContentBlock();} ) } @@ -2381,8 +2378,9 @@ LexicalUnitImpl nonVariableTerm(LexicalUnitImpl prev) :
{
LexicalUnitImpl result && (Character.isDigit(s.charAt(i)) || (s.charAt(i) == '.'))) { i++; } + result = LexicalUnitImpl.createDimen(n.beginLine, n.beginColumn, prev, - Float.valueOf(s.substring(0, i)).floatValue(), + number(op,n,s.length()-i), s.substring(i)); } | result=function(op, prev) ) ) @@ -2734,9 +2732,35 @@ String skipStatementUntilLeftBrace(){ } JAVACODE -String skipStatementUntilRightParan(){ - int[] rParan = {RPARAN}; - return skipStatementUntil(rParan); +String skipStatementUntilMatchingRightParan(){ + int[] leftTokens = {LPARAN, FUNCTION}; // a FUNCTION also contains "(" + int[] rightTokens = {RPARAN}; + StringBuffer s = new StringBuffer(); + int difference = 1; + Token tok; + while(difference != 0){ + tok = getToken(1); + if(tok.kind == EOF) { + return null; + } + for(int sym : leftTokens){ + if(tok.kind == sym){ + difference++; + } + } + for(int sym : rightTokens){ + if(tok.kind == sym){ + difference--; + } + } + if(difference != 0){ + if (tok.image != null) { + s.append(tok.image); + } + getNextToken(); + } + } + return s.toString().trim(); } JAVACODE 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 = { "<EOF>", "<S>", "<SINGLE_LINE_COMMENT>", - "<token of kind 3>", "\"/*\"", "\"*/\"", "\"*/\"", - "<token of kind 7>", "\"<!--\"", "\"-->\"", "\"{\"", "\"}\"", - "\"|=\"", "\"^=\"", "\"$=\"", "\"*=\"", "\"~=\"", "\"=\"", "\"+\"", - "\"-\"", "\",\"", "\";\"", "\">\"", "\"~\"", "\"<\"", "\"/\"", - "\"[\"", "\"]\"", "\"*\"", "\"%\"", "\"&\"", "\".\"", "\"(\"", - "\")\"", "\"==\"", "\"||\"", "\"&&\"", "\"!=\"", "\":\"", - "<INTERPOLATION>", "<NONASCII>", "<H>", "<UNICODE>", "<ESCAPE>", - "<NMSTART>", "<NMCHAR>", "<STRINGCHAR>", "<D>", "<NAME>", "\"to\"", - "\"through\"", "\"in\"", "\"from\"", "\"@mixin\"", "\"@include\"", - "\"@function\"", "\"@return\"", "\"@debug\"", "\"@warn\"", - "\"@for\"", "\"@each\"", "\"@while\"", "\"@if\"", "\"@else\"", - "\"@extend\"", "\"@-moz-document\"", "\"@supports\"", - "\"@content\"", "<MICROSOFT_RULE>", "\"if\"", "<GUARDED_SYM>", - "<STRING>", "<IDENT>", "<NUMBER>", "<_URL>", "<URL>", "<VARIABLE>", - "<PERCENTAGE>", "<PT>", "<MM>", "<CM>", "<PC>", "<IN>", "<PX>", - "<EMS>", "<LEM>", "<REM>", "<EXS>", "<DEG>", "<RAD>", "<GRAD>", - "<MS>", "<SECOND>", "<HZ>", "<KHZ>", "<DIMEN>", "<HASH>", - "\"@import\"", "\"@media\"", "\"@charset\"", "\"@page\"", - "\"@font-face\"", "<KEY_FRAME_SYM>", "<ATKEYWORD>", - "<IMPORTANT_SYM>", "<RANGE0>", "<RANGE1>", "<RANGE2>", "<RANGE3>", - "<RANGE4>", "<RANGE5>", "<RANGE6>", "<RANGE>", "<UNI>", - "<UNICODERANGE>", "<REMOVE>", "<APPEND>", "<CONTAINS>", - "<FUNCTION>", "<UNKNOWN>", }; + /** Literal token values. */ + String[] tokenImage = { + "<EOF>", + "<S>", + "<SINGLE_LINE_COMMENT>", + "<token of kind 3>", + "\"/*\"", + "\"*/\"", + "\"*/\"", + "<token of kind 7>", + "\"<!--\"", + "\"-->\"", + "\"{\"", + "\"}\"", + "\"|=\"", + "\"^=\"", + "\"$=\"", + "\"*=\"", + "\"~=\"", + "\"=\"", + "\"+\"", + "\"-\"", + "\",\"", + "\";\"", + "\">\"", + "\"~\"", + "\"<\"", + "\"/\"", + "\"[\"", + "\"]\"", + "\"*\"", + "\"%\"", + "\"&\"", + "\".\"", + "\"(\"", + "\")\"", + "\"==\"", + "\"||\"", + "\"&&\"", + "\"!=\"", + "\":\"", + "<INTERPOLATION>", + "<NONASCII>", + "<H>", + "<UNICODE>", + "<ESCAPE>", + "<NMSTART>", + "<NMCHAR>", + "<STRINGCHAR>", + "<D>", + "<NAME>", + "\"to\"", + "\"through\"", + "\"in\"", + "\"from\"", + "\"@mixin\"", + "\"@include\"", + "\"@function\"", + "\"@return\"", + "\"@debug\"", + "\"@warn\"", + "\"@for\"", + "\"@each\"", + "\"@while\"", + "\"@if\"", + "\"@else\"", + "\"@extend\"", + "\"@-moz-document\"", + "\"@supports\"", + "\"@content\"", + "<MICROSOFT_RULE>", + "\"if\"", + "<GUARDED_SYM>", + "<STRING>", + "<IDENT>", + "<NUMBER>", + "<_URL>", + "<URL>", + "<VARIABLE>", + "<PERCENTAGE>", + "<PT>", + "<MM>", + "<CM>", + "<PC>", + "<IN>", + "<PX>", + "<EMS>", + "<LEM>", + "<REM>", + "<EXS>", + "<DEG>", + "<RAD>", + "<GRAD>", + "<MS>", + "<SECOND>", + "<HZ>", + "<KHZ>", + "<DIMEN>", + "<HASH>", + "\"@import\"", + "\"@media\"", + "\"@charset\"", + "\"@page\"", + "\"@font-face\"", + "<KEY_FRAME_SYM>", + "<ATKEYWORD>", + "<IMPORTANT_SYM>", + "<RANGE0>", + "<RANGE1>", + "<RANGE2>", + "<RANGE3>", + "<RANGE4>", + "<RANGE5>", + "<RANGE6>", + "<RANGE>", + "<UNI>", + "<UNICODERANGE>", + "<REMOVE>", + "<APPEND>", + "<CONTAINS>", + "<FUNCTION>", + "<UNKNOWN>", + }; } 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 bf4ebf5c06..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,5965 +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 ((0x7fffffe07fffffeL & 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 ((0x7fffffe07fffffeL & l) != 0L) { - jjCheckNAddStates(0, 3); - } - if ((0x7fffffe07fffffeL & 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 ((0x7fffffe07fffffeL & 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 ((0x7fffffe07fffffeL & 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 ((0x7fffffe07fffffeL & 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: - if ((0x7fffffe07fffffeL & l) != 0L) { - jjCheckNAddStates(138, 140); - } - break; - 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: - if ((0x7fffffe07fffffeL & l) == 0L) { - break; - } - if (kind > 76) { - kind = 76; - } - jjCheckNAddTwoStates(77, 78); - break; - 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 ((0x7fffffe07fffffeL & 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 ((0x7fffffe07fffffeL & l) == 0L) { - break; - } - if (kind > 72) { - kind = 72; - } - jjCheckNAddTwoStates(225, 226); - break; - case 268: - if ((0x7fffffe07fffffeL & l) != 0L) { - jjCheckNAddStates(0, 3); - } - break; - case 269: - if ((0x7fffffe07fffffeL & 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: - if ((0x7fffffe07fffffeL & l) == 0L) { - break; - } - if (kind > 95) { - kind = 95; - } - jjCheckNAddTwoStates(334, 335); - break; - 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/resolver/AbstractResolver.java b/theme-compiler/src/com/vaadin/sass/internal/resolver/AbstractResolver.java new file mode 100644 index 0000000000..5de1f95264 --- /dev/null +++ b/theme-compiler/src/com/vaadin/sass/internal/resolver/AbstractResolver.java @@ -0,0 +1,200 @@ +/* + * Copyright 2000-2013 Vaadin Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + +package com.vaadin.sass.internal.resolver; + +import java.io.File; +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; +import java.util.Stack; + +import org.w3c.css.sac.InputSource; + +import com.vaadin.sass.internal.ScssStylesheet; + +/** + * Base class for resolvers. Implements functionality for locating paths which + * an import can be relative to and helpers for extracting path information from + * the identifier. + * + * @since 7.2 + * @author Vaadin Ltd + */ +public abstract class AbstractResolver implements ScssStylesheetResolver, + Serializable { + /* + * (non-Javadoc) + * + * @see + * com.vaadin.sass.internal.resolver.ScssStylesheetResolver#resolve(java + * .lang.String) + */ + @Override + public InputSource resolve(ScssStylesheet parentStylesheet, + String identifier) { + // Remove a possible ".scss" suffix + identifier = identifier.replaceFirst(".scss$", ""); + + List<String> potentialParentPaths = getPotentialParentPaths( + parentStylesheet, identifier); + + // remove path from identifier as it has already been added to the + // parent path + if (identifier.contains("/")) { + identifier = identifier.substring(identifier.lastIndexOf("/") + 1); + } + + for (String path : potentialParentPaths) { + InputSource source = normalizeAndResolve(path + "/" + identifier); + + if (source != null) { + return source; + } + + // Try to find partial import (_identifier.scss) + source = normalizeAndResolve(path + "/_" + identifier); + + if (source != null) { + return source; + } + + } + + return normalizeAndResolve(identifier); + } + + /** + * Retrieves the parent paths which should be used while resolving relative + * identifiers. By default uses the parent stylesheet location and a + * possible absolute path in the identifier. + * + * @param parentStylesheet + * The parent stylesheet or null if there is no parent + * @param identifier + * The identifier to be resolved + * @return a list of paths in which to look for the relative import + */ + protected List<String> getPotentialParentPaths( + ScssStylesheet parentStylesheet, String identifier) { + List<String> potentialParents = new ArrayList<String>(); + if (parentStylesheet != null) { + potentialParents.add(extractFullPath( + parentStylesheet.getDirectory(), identifier)); + } + + // Identifier can be a full path so extract the path part also as a + // potential parent + if (identifier.contains("/")) { + potentialParents.add(extractFullPath("", identifier)); + } + + return potentialParents; + + } + + /** + * Extracts the full path from the path combined with the identifier + * + * @param path + * The base path + * @param identifier + * The identifier which may contain a path part, separated by "/" + * from the real identifier + * @return a normalized version of the path where identifier does not + * contain any directory information + */ + protected String extractFullPath(String path, String identifier) { + int lastSlashPosition = identifier.lastIndexOf("/"); + if (lastSlashPosition == -1) { + return path; + } + String identifierPath = identifier.substring(0, lastSlashPosition); + if ("".equals(path)) { + return identifierPath; + } else { + return path + "/" + identifierPath; + } + } + + /** + * Resolves the normalized version of the given identifier + * + * @param identifier + * The identifier to resolve + * @return An input source if the resolver found one or null otherwise + */ + protected InputSource normalizeAndResolve(String identifier) { + String normalized = normalize(identifier); + return resolveNormalized(normalized); + } + + /** + * Resolves the identifier after it has been normalized using + * {@link #normalize(String)}. + * + * @param identifier + * The normalized identifier + * @return an InputSource if the resolver found a source or null otherwise + */ + protected abstract InputSource resolveNormalized(String identifier); + + /** + * Normalizes "." and ".." from the path string where parent path segments + * can be removed. Preserve leading "..". Also ensure / is used instead of \ + * in all places. + * + * @param path + * A relative or absolute file path + * @return The normalized path + */ + protected String normalize(String path) { + + // Ensure only "/" is used, also in Windows + path = path.replace(File.separatorChar, '/'); + + // Split into segments + String[] segments = path.split("/"); + Stack<String> result = new Stack<String>(); + + // Replace '.' and '..' segments + for (int i = 0; i < segments.length; i++) { + if (segments[i].equals(".")) { + // Segments marked '.' are ignored + + } else if (segments[i].equals("..") && !result.isEmpty() + && !result.lastElement().equals("..")) { + // If segment is ".." then remove the previous iff the previous + // element is not a ".." and the result stack is not empty + result.pop(); + } else { + // Other segments are just added to the stack + result.push(segments[i]); + } + } + + // Reconstruct path + StringBuilder pathBuilder = new StringBuilder(); + for (int i = 0; i < result.size(); i++) { + if (i > 0) { + pathBuilder.append("/"); + } + pathBuilder.append(result.get(i)); + } + return pathBuilder.toString(); + } + +} diff --git a/theme-compiler/src/com/vaadin/sass/internal/resolver/ClassloaderResolver.java b/theme-compiler/src/com/vaadin/sass/internal/resolver/ClassloaderResolver.java index 8711a0a3e9..755073bc4c 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/resolver/ClassloaderResolver.java +++ b/theme-compiler/src/com/vaadin/sass/internal/resolver/ClassloaderResolver.java @@ -15,31 +15,19 @@ */ package com.vaadin.sass.internal.resolver; -import java.io.File; import java.io.InputStream; import org.w3c.css.sac.InputSource; -public class ClassloaderResolver implements ScssStylesheetResolver { +public class ClassloaderResolver extends AbstractResolver { @Override - public InputSource resolve(String identifier) { - // identifier should not have .scss, fileName should - String ext = ".scss"; - if (identifier.endsWith(".css")) { - ext = ".css"; - } + public InputSource resolveNormalized(String identifier) { String fileName = identifier; - if (identifier.endsWith(ext)) { - identifier = identifier.substring(0, - identifier.length() - ext.length()); - } else { - fileName = fileName + ext; + if (!fileName.endsWith(".css")) { + fileName += ".scss"; } - // Ensure only "/" is used, also in Windows - fileName = fileName.replace(File.separatorChar, '/'); - // Filename should be a relative path starting with VAADIN/... int vaadinIdx = fileName.lastIndexOf("VAADIN/"); if (vaadinIdx > -1) { diff --git a/theme-compiler/src/com/vaadin/sass/internal/resolver/FilesystemResolver.java b/theme-compiler/src/com/vaadin/sass/internal/resolver/FilesystemResolver.java index 9bb1969ab1..786d0875da 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/resolver/FilesystemResolver.java +++ b/theme-compiler/src/com/vaadin/sass/internal/resolver/FilesystemResolver.java @@ -18,24 +18,46 @@ package com.vaadin.sass.internal.resolver; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.InputStream; +import java.util.List; import org.w3c.css.sac.InputSource; -public class FilesystemResolver implements ScssStylesheetResolver { +import com.vaadin.sass.internal.ScssStylesheet; +public class FilesystemResolver extends AbstractResolver { + + private String[] customPaths = null; + + public FilesystemResolver(String... customPaths) { + this.customPaths = customPaths; + } + + /* + * (non-Javadoc) + * + * @see + * com.vaadin.sass.internal.resolver.AbstractResolver#getPotentialPaths( + * com.vaadin.sass.internal.ScssStylesheet, java.lang.String) + */ @Override - public InputSource resolve(String identifier) { - // identifier should not have .scss, fileName should - String ext = ".scss"; - if (identifier.endsWith(".css")) { - ext = ".css"; + protected List<String> getPotentialParentPaths( + ScssStylesheet parentStyleSheet, String identifier) { + List<String> potentialPaths = super.getPotentialParentPaths( + parentStyleSheet, identifier); + if (customPaths != null) { + for (String path : customPaths) { + potentialPaths.add(extractFullPath(path, identifier)); + } } + + return potentialPaths; + } + + @Override + public InputSource resolveNormalized(String identifier) { String fileName = identifier; - if (identifier.endsWith(ext)) { - identifier = identifier.substring(0, - identifier.length() - ext.length()); - } else { - fileName = fileName + ext; + if (!fileName.endsWith(".css")) { + fileName += ".scss"; } try { diff --git a/theme-compiler/src/com/vaadin/sass/internal/resolver/ScssStylesheetResolver.java b/theme-compiler/src/com/vaadin/sass/internal/resolver/ScssStylesheetResolver.java index 45f10836a3..64b3d10d88 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/resolver/ScssStylesheetResolver.java +++ b/theme-compiler/src/com/vaadin/sass/internal/resolver/ScssStylesheetResolver.java @@ -17,6 +17,8 @@ package com.vaadin.sass.internal.resolver; import org.w3c.css.sac.InputSource; +import com.vaadin.sass.internal.ScssStylesheet; + public interface ScssStylesheetResolver { /** * Called with the "identifier" of a stylesheet that the resolver should try @@ -26,9 +28,12 @@ public interface ScssStylesheetResolver { * stylesheet was found, e.g "runo.scss" might result in a URI like * "VAADIN/themes/runo/runo.scss". * + * @param parentStylesheet + * The parent style sheet * @param identifier * used fo find stylesheet * @return InputSource for stylesheet (with URI set) or null if not found */ - public InputSource resolve(String identifier); + public InputSource resolve(ScssStylesheet parentStylesheet, + String identifier); }
\ No newline at end of file diff --git a/theme-compiler/src/com/vaadin/sass/internal/resolver/VaadinResolver.java b/theme-compiler/src/com/vaadin/sass/internal/resolver/VaadinResolver.java deleted file mode 100644 index fec16a54c8..0000000000 --- a/theme-compiler/src/com/vaadin/sass/internal/resolver/VaadinResolver.java +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Copyright 2000-2013 Vaadin Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not - * use this file except in compliance with the License. You may obtain a copy of - * the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations under - * the License. - */ -package com.vaadin.sass.internal.resolver; - -import java.io.File; -import java.util.Stack; - -import org.w3c.css.sac.InputSource; - -public class VaadinResolver implements ScssStylesheetResolver { - - @Override - public InputSource resolve(String identifier) { - - // Remove extra "." and ".." - identifier = normalize(identifier); - - InputSource source = null; - - // Can we find the scss from the file system? - ScssStylesheetResolver resolver = new FilesystemResolver(); - source = resolver.resolve(identifier); - - if (source == null) { - // How about the classpath? - resolver = new ClassloaderResolver(); - source = resolver.resolve(identifier); - } - - return source; - } - - /** - * Normalizes "." and ".." from the path string where parent path segments - * can be removed. Preserve leading "..". - * - * @param path - * A relative or absolute file path - * @return The normalized path - */ - private static String normalize(String path) { - - // Ensure only "/" is used, also in Windows - path = path.replace(File.separatorChar, '/'); - - // Split into segments - String[] segments = path.split("/"); - Stack<String> result = new Stack<String>(); - - // Replace '.' and '..' segments - for (int i = 0; i < segments.length; i++) { - if (segments[i].equals(".")) { - // Segments marked '.' are ignored - - } else if (segments[i].equals("..") && !result.isEmpty() - && !result.lastElement().equals("..")) { - // If segment is ".." then remove the previous iff the previous - // element is not a ".." and the result stack is not empty - result.pop(); - } else { - // Other segments are just added to the stack - result.push(segments[i]); - } - } - - // Reconstruct path - StringBuilder pathBuilder = new StringBuilder(); - for (int i = 0; i < result.size(); i++) { - if (i > 0) { - pathBuilder.append("/"); - } - pathBuilder.append(result.get(i)); - } - return pathBuilder.toString(); - } - -} 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/src/com/vaadin/sass/internal/visitor/ImportNodeHandler.java b/theme-compiler/src/com/vaadin/sass/internal/visitor/ImportNodeHandler.java index 87c7cadcf8..e52767bb5a 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/visitor/ImportNodeHandler.java +++ b/theme-compiler/src/com/vaadin/sass/internal/visitor/ImportNodeHandler.java @@ -16,7 +16,6 @@ package com.vaadin.sass.internal.visitor; -import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; import java.util.ArrayList; @@ -57,21 +56,9 @@ public class ImportNodeHandler { ImportNode importNode = (ImportNode) n; if (!importNode.isPureCssImport()) { try { - StringBuilder filePathBuilder = new StringBuilder( - styleSheet.getDirectory()); - filePathBuilder.append(File.separatorChar).append( - importNode.getUri()); - if (!filePathBuilder.toString().endsWith(".scss")) { - filePathBuilder.append(".scss"); - } - // set parent's charset to imported node. ScssStylesheet imported = ScssStylesheet.get( - filePathBuilder.toString(), - styleSheet.getCharset()); - if (imported == null) { - imported = ScssStylesheet.get(importNode.getUri()); - } + importNode.getUri(), styleSheet); if (imported == null) { throw new FileNotFoundException("Import '" + importNode.getUri() + "' in '" diff --git a/theme-compiler/tests/resources/automatic/css/at-directive-in-if.css b/theme-compiler/tests/resources/automatic/css/at-directive-in-if.css new file mode 100644 index 0000000000..80d4821ead --- /dev/null +++ b/theme-compiler/tests/resources/automatic/css/at-directive-in-if.css @@ -0,0 +1 @@ +@font-face {}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/automatic/css/fontface-in-mixin_new.css b/theme-compiler/tests/resources/automatic/css/fontface-in-mixin_new.css new file mode 100644 index 0000000000..cb842a647d --- /dev/null +++ b/theme-compiler/tests/resources/automatic/css/fontface-in-mixin_new.css @@ -0,0 +1,9 @@ +p { + @font-face { + font-family: "vdebugfont"; + src: url('fonts/font.eot'); + src: url('fonts/font.eot?#iefix') format("embedded-opentype"), url('fonts/font.woff') format("woff"), url('fonts/font.ttf') format("truetype"), url('fonts/font.svg#fontawesome') format("svg"); + font-weight: normal; + font-style: normal; +} +} diff --git a/theme-compiler/tests/resources/automatic/css/functions/abs.css b/theme-compiler/tests/resources/automatic/css/functions/abs.css new file mode 100644 index 0000000000..3c43804a13 --- /dev/null +++ b/theme-compiler/tests/resources/automatic/css/functions/abs.css @@ -0,0 +1,11 @@ +.foo { + a: 0; + b: 12.51; + c: 1.1px; + d: 12; + e: 12px; + f: 12.9999; + g: 12.9999em; + h: 13.0001; + i: 13.0001%; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/automatic/css/functions/ceil.css b/theme-compiler/tests/resources/automatic/css/functions/ceil.css new file mode 100644 index 0000000000..9956ff3612 --- /dev/null +++ b/theme-compiler/tests/resources/automatic/css/functions/ceil.css @@ -0,0 +1,11 @@ +.foo { + a: 0; + b: -12; + c: -1px; + d: 12; + e: 12px; + f: 13; + g: 13em; + h: 14; + i: 14%; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/automatic/css/functions/floor.css b/theme-compiler/tests/resources/automatic/css/functions/floor.css new file mode 100644 index 0000000000..f96e99d809 --- /dev/null +++ b/theme-compiler/tests/resources/automatic/css/functions/floor.css @@ -0,0 +1,11 @@ +.foo { + a: 0; + b: -13; + c: -2px; + d: 12; + e: 12px; + f: 12; + g: 12em; + h: 13; + i: 13%; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/automatic/css/functions/round.css b/theme-compiler/tests/resources/automatic/css/functions/round.css new file mode 100644 index 0000000000..72d9a8596d --- /dev/null +++ b/theme-compiler/tests/resources/automatic/css/functions/round.css @@ -0,0 +1,11 @@ +.foo { + a: 0; + b: -13; + c: -1px; + d: 12; + e: 12px; + f: 13; + g: 13em; + h: 13; + i: 13%; +}
\ No newline at end of file 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-content-parameters.css b/theme-compiler/tests/resources/automatic/css/mixin-content-parameters.css new file mode 100644 index 0000000000..ddae1ed036 --- /dev/null +++ b/theme-compiler/tests/resources/automatic/css/mixin-content-parameters.css @@ -0,0 +1,2 @@ +foo { + lorem: ipsum; }
\ 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/css/negative-ch-value.css b/theme-compiler/tests/resources/automatic/css/negative-ch-value.css new file mode 100644 index 0000000000..2cc75b2a6d --- /dev/null +++ b/theme-compiler/tests/resources/automatic/css/negative-ch-value.css @@ -0,0 +1,3 @@ +* { + top: -0.1ch; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/automatic/scss/at-directive-in-if.scss b/theme-compiler/tests/resources/automatic/scss/at-directive-in-if.scss new file mode 100644 index 0000000000..30556fb382 --- /dev/null +++ b/theme-compiler/tests/resources/automatic/scss/at-directive-in-if.scss @@ -0,0 +1,8 @@ +@mixin test($italic: true) { + @if $italic { + @font-face { + } + } +} + +@include test;
\ No newline at end of file diff --git a/theme-compiler/tests/resources/automatic/scss/fontface-in-mixin_new.scss b/theme-compiler/tests/resources/automatic/scss/fontface-in-mixin_new.scss new file mode 100644 index 0000000000..22356f724e --- /dev/null +++ b/theme-compiler/tests/resources/automatic/scss/fontface-in-mixin_new.scss @@ -0,0 +1,17 @@ +@mixin debug-globals { + @font-face { + font-family: 'vdebugfont'; + src:url('fonts/font.eot'); + src:url('fonts/font.eot?#iefix') format('embedded-opentype'), + url('fonts/font.woff') format('woff'), + url('fonts/font.ttf') format('truetype'), + url('fonts/font.svg#fontawesome') format('svg'); + font-weight: normal; + font-style: normal; + } + +} + +p { + @include debug-globals; +} diff --git a/theme-compiler/tests/resources/automatic/scss/foo/bar.scss b/theme-compiler/tests/resources/automatic/scss/foo/_bar.scss index 326d34232d..326d34232d 100644 --- a/theme-compiler/tests/resources/automatic/scss/foo/bar.scss +++ b/theme-compiler/tests/resources/automatic/scss/foo/_bar.scss diff --git a/theme-compiler/tests/resources/automatic/scss/functions/abs.scss b/theme-compiler/tests/resources/automatic/scss/functions/abs.scss new file mode 100644 index 0000000000..91946f0556 --- /dev/null +++ b/theme-compiler/tests/resources/automatic/scss/functions/abs.scss @@ -0,0 +1,11 @@ +.foo { +a: abs(0); +b: abs(-12.51); +c: abs(-1.1px); +d: abs(12); +e: abs(12px); +f: abs(12.9999); +g: abs(12.9999em); +h: abs(-13.0001); +i: abs(-13.0001%); +} diff --git a/theme-compiler/tests/resources/automatic/scss/functions/ceil.scss b/theme-compiler/tests/resources/automatic/scss/functions/ceil.scss new file mode 100644 index 0000000000..ad7ceed4b4 --- /dev/null +++ b/theme-compiler/tests/resources/automatic/scss/functions/ceil.scss @@ -0,0 +1,11 @@ +.foo { +a: ceil(0); +b: ceil(-12.51); +c: ceil(-1.1px); +d: ceil(12); +e: ceil(12px); +f: ceil(12.9999); +g: ceil(12.9999em); +h: ceil(13.000001); +i: ceil(13.000001%); +} diff --git a/theme-compiler/tests/resources/automatic/scss/functions/floor.scss b/theme-compiler/tests/resources/automatic/scss/functions/floor.scss new file mode 100644 index 0000000000..a10f1b4fc1 --- /dev/null +++ b/theme-compiler/tests/resources/automatic/scss/functions/floor.scss @@ -0,0 +1,11 @@ +.foo { +a: floor(0); +b: floor(-12.51); +c: floor(-1.1px); +d: floor(12); +e: floor(12px); +f: floor(12.9999); +g: floor(12.9999em); +h: floor(13.000001); +i: floor(13.000001%); +} diff --git a/theme-compiler/tests/resources/automatic/scss/functions/round.scss b/theme-compiler/tests/resources/automatic/scss/functions/round.scss new file mode 100644 index 0000000000..3f1fa06aec --- /dev/null +++ b/theme-compiler/tests/resources/automatic/scss/functions/round.scss @@ -0,0 +1,11 @@ +.foo { +a: round(0); +b: round(-12.51); +c: round(-1.1px); +d: round(12); +e: round(12px); +f: round(12.9999); +g: round(12.9999em); +h: round(13.000001); +i: round(13.000001%); +} diff --git a/theme-compiler/tests/resources/automatic/scss/import-file-which-contains-comment-in-last-line.scss b/theme-compiler/tests/resources/automatic/scss/import-file-which-contains-comment-in-last-line.scss index 41adc908ed..8292d4efe3 100644 --- a/theme-compiler/tests/resources/automatic/scss/import-file-which-contains-comment-in-last-line.scss +++ b/theme-compiler/tests/resources/automatic/scss/import-file-which-contains-comment-in-last-line.scss @@ -1,4 +1,4 @@ -@import "to-be-imported/imported-file-contains-comments-in-last-line.scss"; +@import "to-be-imported/_imported-file-contains-comments-in-last-line.scss"; .foo{ foo: $foo; }
\ 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-content-parameters.scss b/theme-compiler/tests/resources/automatic/scss/mixin-content-parameters.scss new file mode 100644 index 0000000000..dc64ddf6f8 --- /dev/null +++ b/theme-compiler/tests/resources/automatic/scss/mixin-content-parameters.scss @@ -0,0 +1,9 @@ +@mixin test($foo) { + #{$foo} { + @content; + } +} + +@include test("foo") { + lorem: ipsum; +}
\ No newline at end of file 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 diff --git a/theme-compiler/tests/resources/automatic/scss/negative-ch-value.scss b/theme-compiler/tests/resources/automatic/scss/negative-ch-value.scss new file mode 100644 index 0000000000..2cc75b2a6d --- /dev/null +++ b/theme-compiler/tests/resources/automatic/scss/negative-ch-value.scss @@ -0,0 +1,3 @@ +* { + top: -0.1ch; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/automatic/scss/nested-import.scss b/theme-compiler/tests/resources/automatic/scss/nested-import.scss index 605d64a13a..df720a5584 100644 --- a/theme-compiler/tests/resources/automatic/scss/nested-import.scss +++ b/theme-compiler/tests/resources/automatic/scss/nested-import.scss @@ -1,3 +1,3 @@ .foo { - @import "foo/bar.scss"; + @import "foo/_bar.scss"; }
\ No newline at end of file diff --git a/theme-compiler/tests/resources/automatic/scss/to-be-imported/imported-file-contains-comments-in-last-line.scss b/theme-compiler/tests/resources/automatic/scss/to-be-imported/_imported-file-contains-comments-in-last-line.scss index 16244f2bfd..16244f2bfd 100644 --- a/theme-compiler/tests/resources/automatic/scss/to-be-imported/imported-file-contains-comments-in-last-line.scss +++ b/theme-compiler/tests/resources/automatic/scss/to-be-imported/_imported-file-contains-comments-in-last-line.scss diff --git a/theme-compiler/tests/resources/automatic/scss/url-path.scss b/theme-compiler/tests/resources/automatic/scss/url-path.scss index 0cc954bfb4..6903d389b5 100644 --- a/theme-compiler/tests/resources/automatic/scss/url-path.scss +++ b/theme-compiler/tests/resources/automatic/scss/url-path.scss @@ -1 +1 @@ -@import "foo/bar.scss";
\ No newline at end of file +@import "foo/_bar.scss";
\ No newline at end of file diff --git a/theme-compiler/tests/resources/automatic/scss/utf8-imported/to-be-imported-scss-file-contains-utf8.scss b/theme-compiler/tests/resources/automatic/scss/utf8-imported/_to-be-imported-scss-file-contains-utf8.scss index f8a08a4a96..f8a08a4a96 100644 --- a/theme-compiler/tests/resources/automatic/scss/utf8-imported/to-be-imported-scss-file-contains-utf8.scss +++ b/theme-compiler/tests/resources/automatic/scss/utf8-imported/_to-be-imported-scss-file-contains-utf8.scss diff --git a/theme-compiler/tests/resources/automatic/scss/utf8.scss b/theme-compiler/tests/resources/automatic/scss/utf8.scss index b568674073..251d6e6513 100644 --- a/theme-compiler/tests/resources/automatic/scss/utf8.scss +++ b/theme-compiler/tests/resources/automatic/scss/utf8.scss @@ -1,4 +1,4 @@ @charset "UTF-8"; -@import "utf8-imported/to-be-imported-scss-file-contains-utf8"; +@import "utf8-imported/_to-be-imported-scss-file-contains-utf8"; .bar {content: "\1f4c5";} .raw_utf {content: "📈";}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/css/compass-import.css b/theme-compiler/tests/resources/css/compass-import.css new file mode 100644 index 0000000000..e3d4b5fcca --- /dev/null +++ b/theme-compiler/tests/resources/css/compass-import.css @@ -0,0 +1,49 @@ +.content-navigation { + border-color: #3bbfce; + color: #0000ff; +} + +.border { + padding: 8px; + margin: 8px; + border-color: #3bbfce; +} + +.body { + background-image: url(compass/folder-test2/bg.png); + background: transparent url(compass/folder-test2/img/loading-indicator.gif); + background-image: url(http://abc/bg.png); + background-image: url(/abc/bg.png); +} + +.base { + color: red; +} + +.text { + font-weight: bold; +} + +.footer { + border: 2px solid black; + -webkit-border-radius: 10px; + -moz-border-radius: 10px; + border-radius: 10px; +} + +.banner { + border: 1px solid black; + font-color: red; +} + +.interpolation-test { + font-size: 14px; +} + +.header { + width: 100%; +} + +.badError { + border-width: 3px; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/sasslang/css/100-test_optional_extend_does_not_warn_when_extension_fails.css b/theme-compiler/tests/resources/sasslangbroken/css/100-test_optional_extend_does_not_warn_when_extension_fails.css index 29116d880b..29116d880b 100644 --- a/theme-compiler/tests/resources/sasslang/css/100-test_optional_extend_does_not_warn_when_extension_fails.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/100-test_optional_extend_does_not_warn_when_extension_fails.css diff --git a/theme-compiler/tests/resources/sasslang/css/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.css b/theme-compiler/tests/resources/sasslangbroken/css/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.css index 77b7586abb..77b7586abb 100644 --- a/theme-compiler/tests/resources/sasslang/css/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.css diff --git a/theme-compiler/tests/resources/sasslang/css/36-test_extend_self_loop.css b/theme-compiler/tests/resources/sasslangbroken/css/36-test_extend_self_loop.css index 234d524066..234d524066 100644 --- a/theme-compiler/tests/resources/sasslang/css/36-test_extend_self_loop.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/36-test_extend_self_loop.css diff --git a/theme-compiler/tests/resources/sasslang/css/37-test_extend_warns_when_extendee_doesnt_exist.css b/theme-compiler/tests/resources/sasslangbroken/css/37-test_extend_warns_when_extendee_doesnt_exist.css index 8b13789179..8b13789179 100644 --- a/theme-compiler/tests/resources/sasslang/css/37-test_extend_warns_when_extendee_doesnt_exist.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/37-test_extend_warns_when_extendee_doesnt_exist.css diff --git a/theme-compiler/tests/resources/sasslang/css/38-test_extend_warns_when_extension_fails.css b/theme-compiler/tests/resources/sasslangbroken/css/38-test_extend_warns_when_extension_fails.css index 29116d880b..29116d880b 100644 --- a/theme-compiler/tests/resources/sasslang/css/38-test_extend_warns_when_extension_fails.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/38-test_extend_warns_when_extension_fails.css diff --git a/theme-compiler/tests/resources/sasslang/css/57-test_long_extendee_requires_all_selectors.css b/theme-compiler/tests/resources/sasslangbroken/css/57-test_long_extendee_requires_all_selectors.css index 234d524066..234d524066 100644 --- a/theme-compiler/tests/resources/sasslang/css/57-test_long_extendee_requires_all_selectors.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/57-test_long_extendee_requires_all_selectors.css diff --git a/theme-compiler/tests/resources/sasslang/css/60-test_long_extender_aborts_unification.css b/theme-compiler/tests/resources/sasslangbroken/css/60-test_long_extender_aborts_unification.css index 18bc24e7cd..18bc24e7cd 100644 --- a/theme-compiler/tests/resources/sasslang/css/60-test_long_extender_aborts_unification.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/60-test_long_extender_aborts_unification.css diff --git a/theme-compiler/tests/resources/sasslang/css/71-test_nested_extender_aborts_unification.css b/theme-compiler/tests/resources/sasslangbroken/css/71-test_nested_extender_aborts_unification.css index 2337e9af40..2337e9af40 100644 --- a/theme-compiler/tests/resources/sasslang/css/71-test_nested_extender_aborts_unification.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/71-test_nested_extender_aborts_unification.css diff --git a/theme-compiler/tests/resources/sasslang/css/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.css b/theme-compiler/tests/resources/sasslangbroken/css/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.css index 09b4ccac27..09b4ccac27 100644 --- a/theme-compiler/tests/resources/sasslang/css/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.css diff --git a/theme-compiler/tests/resources/sasslang/css/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.css b/theme-compiler/tests/resources/sasslangbroken/css/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.css index 8b13789179..8b13789179 100644 --- a/theme-compiler/tests/resources/sasslang/css/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.css diff --git a/theme-compiler/tests/resources/sasslang/scss/100-test_optional_extend_does_not_warn_when_extension_fails.scss b/theme-compiler/tests/resources/sasslangbroken/scss/100-test_optional_extend_does_not_warn_when_extension_fails.scss index 6d707236f2..6d707236f2 100644 --- a/theme-compiler/tests/resources/sasslang/scss/100-test_optional_extend_does_not_warn_when_extension_fails.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/100-test_optional_extend_does_not_warn_when_extension_fails.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.scss b/theme-compiler/tests/resources/sasslangbroken/scss/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.scss index 713644b221..713644b221 100644 --- a/theme-compiler/tests/resources/sasslang/scss/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/36-test_extend_self_loop.scss b/theme-compiler/tests/resources/sasslangbroken/scss/36-test_extend_self_loop.scss index ac40f00573..ac40f00573 100644 --- a/theme-compiler/tests/resources/sasslang/scss/36-test_extend_self_loop.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/36-test_extend_self_loop.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/37-test_extend_warns_when_extendee_doesnt_exist.scss b/theme-compiler/tests/resources/sasslangbroken/scss/37-test_extend_warns_when_extendee_doesnt_exist.scss index cd54108c97..cd54108c97 100644 --- a/theme-compiler/tests/resources/sasslang/scss/37-test_extend_warns_when_extendee_doesnt_exist.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/37-test_extend_warns_when_extendee_doesnt_exist.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/38-test_extend_warns_when_extension_fails.scss b/theme-compiler/tests/resources/sasslangbroken/scss/38-test_extend_warns_when_extension_fails.scss index 8381c7279a..8381c7279a 100644 --- a/theme-compiler/tests/resources/sasslang/scss/38-test_extend_warns_when_extension_fails.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/38-test_extend_warns_when_extension_fails.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/57-test_long_extendee_requires_all_selectors.scss b/theme-compiler/tests/resources/sasslangbroken/scss/57-test_long_extendee_requires_all_selectors.scss index 011d26a83e..011d26a83e 100644 --- a/theme-compiler/tests/resources/sasslang/scss/57-test_long_extendee_requires_all_selectors.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/57-test_long_extendee_requires_all_selectors.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/60-test_long_extender_aborts_unification.scss b/theme-compiler/tests/resources/sasslangbroken/scss/60-test_long_extender_aborts_unification.scss index 5238f3f93e..5238f3f93e 100644 --- a/theme-compiler/tests/resources/sasslang/scss/60-test_long_extender_aborts_unification.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/60-test_long_extender_aborts_unification.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/71-test_nested_extender_aborts_unification.scss b/theme-compiler/tests/resources/sasslangbroken/scss/71-test_nested_extender_aborts_unification.scss index bcbb6e181d..bcbb6e181d 100644 --- a/theme-compiler/tests/resources/sasslang/scss/71-test_nested_extender_aborts_unification.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/71-test_nested_extender_aborts_unification.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.scss b/theme-compiler/tests/resources/sasslangbroken/scss/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.scss index 73f6254f21..73f6254f21 100644 --- a/theme-compiler/tests/resources/sasslang/scss/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.scss b/theme-compiler/tests/resources/sasslangbroken/scss/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.scss index 551764036f..551764036f 100644 --- a/theme-compiler/tests/resources/sasslang/scss/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.scss diff --git a/theme-compiler/tests/resources/scss/compass-test/compass-import.scss b/theme-compiler/tests/resources/scss/compass-test/compass-import.scss new file mode 100644 index 0000000000..36d041b33c --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test/compass-import.scss @@ -0,0 +1,4 @@ +@import "compass"; +.badError { + border-width: 3px; +} diff --git a/theme-compiler/tests/resources/scss/compass-test2/_compass.scss b/theme-compiler/tests/resources/scss/compass-test2/_compass.scss new file mode 100644 index 0000000000..9b741c0f03 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/_compass.scss @@ -0,0 +1,3 @@ +@import "compass/utilities"; +@import "compass/typography"; +@import "compass/css3"; diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass-import2.scss b/theme-compiler/tests/resources/scss/compass-test2/compass-import2.scss new file mode 100644 index 0000000000..36d041b33c --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass-import2.scss @@ -0,0 +1,4 @@ +@import "compass"; +.badError { + border-width: 3px; +} diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/_css3.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/_css3.scss new file mode 100644 index 0000000000..42163ba193 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/_css3.scss @@ -0,0 +1,3 @@ +@import "css3/border-radius"; +@import "css3/inline-block"; +@import "css3/opacity"; diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/_typography.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/_typography.scss new file mode 100644 index 0000000000..a65c1ff292 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/_typography.scss @@ -0,0 +1,3 @@ +@import "typography/links"; +@import "typography/lists"; +@import "typography/text"; diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/_utilities.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/_utilities.scss new file mode 100644 index 0000000000..644ad3368b --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/_utilities.scss @@ -0,0 +1,3 @@ +@import "utilities/color"; +@import "utilities/general"; +@import "utilities/sprites"; diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_border-radius.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_border-radius.scss new file mode 100644 index 0000000000..752003104b --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_border-radius.scss @@ -0,0 +1,4 @@ +.banner { + border: 1px solid black; + font-color: red; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_inline-block.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_inline-block.scss new file mode 100644 index 0000000000..3fefab83b2 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_inline-block.scss @@ -0,0 +1,3 @@ +.interpolation-test { + font-size: 14px; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_opacity.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_opacity.scss new file mode 100644 index 0000000000..f6bf34fe24 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_opacity.scss @@ -0,0 +1,3 @@ +.header { + width: 100%; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_links.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_links.scss new file mode 100644 index 0000000000..bc7318558e --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_links.scss @@ -0,0 +1,3 @@ +.base { + color: red; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_lists.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_lists.scss new file mode 100644 index 0000000000..af174b7095 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_lists.scss @@ -0,0 +1,3 @@ +.text { + font-weight: bold; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_text.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_text.scss new file mode 100644 index 0000000000..8239527f7b --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_text.scss @@ -0,0 +1,6 @@ +.footer { + border: 2px solid black; + -webkit-border-radius: 10px; + -moz-border-radius: 10px; + border-radius: 10px; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_color.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_color.scss new file mode 100644 index 0000000000..ea1b7a55f0 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_color.scss @@ -0,0 +1,4 @@ +.content-navigation { + border-color: #3bbfce; + color: #0000ff; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_general.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_general.scss new file mode 100644 index 0000000000..0c58c6433d --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_general.scss @@ -0,0 +1,5 @@ +.border { + padding: 8px; + margin: 8px; + border-color: #3bbfce; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_sprites.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_sprites.scss new file mode 100644 index 0000000000..28960f89fc --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_sprites.scss @@ -0,0 +1,6 @@ +.body { + background-image: url(../folder-test2/bg.png); + background: transparent url(../folder-test2/img/loading-indicator.gif); + background-image: url(http://abc/bg.png); + background-image: url(/abc/bg.png); +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/license-readme.txt b/theme-compiler/tests/resources/scss/compass-test2/license-readme.txt new file mode 100644 index 0000000000..90ba808179 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/license-readme.txt @@ -0,0 +1,26 @@ +The design here is to use the stylesheets located at: +https://github com/chriseppstein/compass/tree/stable/frameworks/compass/stylesheets + +and update the VAADIN code to be able to read them in such that an existing JRuby implementation can be replaced with VAADIN without any changes to one's *.scss and *.css files. + +The current short snippets of SCSS that are included here only for testing Compass compatibility might not qualify as significant or substantial parts, but in any case Compass is being mentioned for related tests pointing to the original implementation. These small portions of Compass are copied and modified for the testing of compatibility only. + +The license for Compass mentioned here: +https://github.com/chriseppstein/compass/blob/stable/LICENSE.markdown + +is as follows: + + + + +Copyright (c) 2009 Christopher M. Eppstein + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. No attribution is required by products that make use of this software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name(s) of the above copyright holders shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization. + +Contributors to this project agree to grant all rights to the copyright holder of the primary product. Attribution is maintained in the source control history of the product. diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.0.scss new file mode 100644 index 0000000000..2f1e55e87e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-001.htm */ + +html { margin:10px; border:20px solid black; padding:30px; } +body { height:10000px; margin:0; } +div { position:absolute; width:100px; height:100px; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.1.scss new file mode 100644 index 0000000000..7b5eace311 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-001.htm */ +.style { top:0; background:yellow; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.2.scss new file mode 100644 index 0000000000..c94661f654 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-001.htm */ +.style { right:0; background:orange; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.3.scss new file mode 100644 index 0000000000..893b95ca14 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-001.htm */ +.style { bottom:0; background:brown; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.4.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.4.scss new file mode 100644 index 0000000000..71d199866c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-001.htm */ +.style { left:0; background:pink; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004a.0.scss new file mode 100644 index 0000000000..457f6a2d2f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004a.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004a.htm */ +.style { position:absolute; left:100px; top:100px; width:100px; height:100px; background:yellow; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004b.0.scss new file mode 100644 index 0000000000..8990089fb6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004b.htm */ +.style { position:fixed; left:100px; top:100px; width:100px; height:100px; background:yellow; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004c.0.scss new file mode 100644 index 0000000000..1bad688abe --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004c.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004c.htm */ +.style { position:absolute; left:100px; top:100px; width:100px; height:100px; background:yellow; border:10px solid black; display:table; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004d.0.scss new file mode 100644 index 0000000000..8f8b50e4c7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004d.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004d.htm */ +.style { position:fixed; left:100px; top:100px; width:100px; height:100px; background:yellow; border:10px solid black; display:table } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004e.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004e.0.scss new file mode 100644 index 0000000000..0c460b5c3f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004e.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004e.htm */ +.style { display:table } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004e.1.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004e.1.scss new file mode 100644 index 0000000000..29c22194fd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004e.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004e.htm */ +.style { position:absolute; left:100px; top:100px; width:100px; height:100px; border:10px solid black; background:yellow; margin:0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004f.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004f.0.scss new file mode 100644 index 0000000000..33f39b6ab6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004f.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004f.htm */ +.style { display:table } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004f.1.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004f.1.scss new file mode 100644 index 0000000000..c458e5dc33 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004f.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004f.htm */ +.style { position:fixed; left:100px; top:100px; width:100px; height:100px; border:10px solid black; background:yellow; margin:0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005a.0.scss new file mode 100644 index 0000000000..a724d1b918 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005a.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-005a.htm */ +.style { position:absolute; width:100px; height:100px; background:yellow; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005b.0.scss new file mode 100644 index 0000000000..d9b1214a4b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-005b.htm */ +.style { position:absolute; width:100px; height:100px; display:table; background:yellow; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005c.0.scss new file mode 100644 index 0000000000..e6e7f6b90b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005c.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-005c.htm */ +.style { position:fixed; width:100px; height:100px; background:yellow; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005d.0.scss new file mode 100644 index 0000000000..1bc05d796a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005d.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-005d.htm */ +.style { position:fixed; width:100px; height:100px; display:table; background:yellow; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-007.0.scss new file mode 100644 index 0000000000..9080cba258 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-007.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-007.htm */ +.style { position:relative; top:100px; left:100px; height:100px; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-007.1.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-007.1.scss new file mode 100644 index 0000000000..40f293c03b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-007.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-007.htm */ +.style { position:absolute; margin:0; bottom:0; height:30px; border:10px solid orange; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009a.0.scss new file mode 100644 index 0000000000..ac865fb846 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009a.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-009a.htm */ +.style { width:50%; height:50%; margin:50px; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009b.0.scss new file mode 100644 index 0000000000..0b108fff62 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-009b.htm */ +.style { position:absolute; left:50px; top:50px; width:50%; height:50%; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009e.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009e.0.scss new file mode 100644 index 0000000000..f5bda4dc9f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009e.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-009e.htm */ +.style { position:absolute; width:50%; height:50%; top:50px; left:50px; margin:0; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009f.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009f.0.scss new file mode 100644 index 0000000000..788e50c119 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009f.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-009f.htm */ +.style { position:relative; height:50%; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009f.1.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009f.1.scss new file mode 100644 index 0000000000..e1c3142ad8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009f.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-009f.htm */ +.style { position:absolute; width:50%; top:50px; left:50px; height:100%; margin:0; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-non-replaced-width-margin-000.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-non-replaced-width-margin-000.0.scss new file mode 100644 index 0000000000..69f5c2fa6a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-non-replaced-width-margin-000.0.scss @@ -0,0 +1,93 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-non-replaced-width-margin-000.htm */ + + +div { height: 1px; direction: ltr; } + +/* + * Every case here has three divs nested inside of each other. The + * innermost div (absolutely positioned) is the testcase (and has + * color). The middle div's content edge establishes the containing + * block it would have if it were statically positioned. The outermost + * div is actually its containing block. + * + * the abs pos containing block runs from 50px to 700px from the left edge + * the static pos containing block runs from 150px to 650px from the left edge + */ + +/* totals for html and body: 21px on the left, 34px on the right */ +html, body { border: transparent medium solid; } +html { margin: 0 3px 0 2px; padding: 0 4px 0 3px; border-width: 0 3px 0 8px; } +body { margin: 0 6px 0 3px; padding: 0 7px 0 1px; border-width: 0 11px 0 4px; } + +body > div { + position: relative; + + top: 0; + left: 4px; + + margin-left: 16px; + border-left: 9px solid transparent; + /* sum of above items (29px), plus 21px above, is 50px */ + padding-left: 40px; + + width: 595px; + + padding-right: 15px; + /* sum of above items (650px), plus 50px above, is 700px */ + + border-right: 27px solid transparent; + margin-right: 13px; +} + +body > div > div { + /* padding-left above: 40px */ + margin-left: 7px; + border-left: 29px solid transparent; + padding-left: 24px; + /* sum of above items (100px), plus 50px above, is 150px */ + + /* padding-right above: 15px */ + padding-right: 14px; + border-right: 3px solid transparent; + margin-right: 18px; + /* sum of above items (50px), subtracted from 700px, is 650px */ +} + +body > div > div > div { + background: navy; + position: absolute; + top: 0; + bottom: 0; + + /* specify everything; we'll put the autos as overrides below */ + left: 3px; + margin-left: 17px; + border-left: 6px solid transparent; + padding-left: 1px; + padding-right: 9px; + border-right: 8px solid transparent; + margin-right: 19px; + right: 8px; +} + +/* and give it 72px of intrinsic width for the case where it has width:auto */ +body > div > div > div > div { + width: 72px; +} + +/* now we want to test all 128 combinations of presence of the following */ + +body > div.adir { direction: rtl; } +body > div.sdir > div { direction: rtl; } +body > div.edir > div > div { direction: rtl; } +body > div.ol > div > div { left: auto; } +body > div.or > div > div { right: auto; } +body > div.ml > div > div { margin-left: auto; } +body > div.mr > div > div { margin-right: auto; } + +/* combined with each of these three */ +body > div.narrowwidth > div > div { width: 153px; } +body > div.autowidth > div > div { width: auto; } +body > div.widewidth > div > div { width: 660px; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-replaced-width-margin-000.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-replaced-width-margin-000.0.scss new file mode 100644 index 0000000000..99f2a308f3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-replaced-width-margin-000.0.scss @@ -0,0 +1,88 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-replaced-width-margin-000.htm */ + + +div { height: 1px; direction: ltr; } + +/* + * Every case here has two divs and an image nested inside of each other. The + * innermost div (absolutely positioned) is the testcase (and has + * color). The middle div's content edge establishes the containing + * block it would have if it were statically positioned. The outermost + * div is actually its containing block. + * + * the abs pos containing block runs from 50px to 700px from the left edge + * the static pos containing block runs from 150px to 650px from the left edge + */ + +/* totals for html and body: 21px on the left, 34px on the right */ +html, body { border: transparent medium solid; } +html { margin: 0 3px 0 2px; padding: 0 4px 0 3px; border-width: 0 3px 0 8px; } +body { margin: 0 6px 0 3px; padding: 0 7px 0 1px; border-width: 0 11px 0 4px; } + +body > div { + position: relative; + + top: 0; + left: 4px; + + margin-left: 16px; + border-left: 9px solid transparent; + /* sum of above items (29px), plus 21px above, is 50px */ + padding-left: 40px; + + width: 595px; + + padding-right: 15px; + /* sum of above items (650px), plus 50px above, is 700px */ + + border-right: 27px solid transparent; + margin-right: 13px; +} + +body > div > div { + /* padding-left above: 40px */ + margin-left: 7px; + border-left: 29px solid transparent; + padding-left: 24px; + /* sum of above items (100px), plus 50px above, is 150px */ + + /* padding-right above: 15px */ + padding-right: 14px; + border-right: 3px solid transparent; + margin-right: 18px; + /* sum of above items (50px), subtracted from 700px, is 650px */ +} + +body > div > div > img { + background: navy; + position: absolute; + top: 0; + bottom: 0; + + /* specify everything; we'll put the autos as overrides below */ + left: 3px; + margin-left: 17px; + border-left: 6px solid transparent; + padding-left: 1px; + padding-right: 9px; + border-right: 8px solid transparent; + margin-right: 19px; + right: 8px; +} + +/* now we want to test all 128 combinations of presence of the following */ + +body > div.adir { direction: rtl; } +body > div.sdir > div { direction: rtl; } +body > div.edir > div > img { direction: rtl; } +body > div.ol > div > img { left: auto; } +body > div.or > div > img { right: auto; } +body > div.ml > div > img { margin-left: auto; } +body > div.mr > div > img { margin-right: auto; } + +/* combined with each of these three (as appropriate for narrow/wide images) */ +body > div.narrowwidth > div > img { width: 153px; height: 1px; } +body > div.autowidth > div > img { width: auto; } +body > div.widewidth > div > img { width: 660px; height: 1px; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/anonymous-boxes-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/anonymous-boxes-001.0.scss new file mode 100644 index 0000000000..3c30052779 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/anonymous-boxes-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/anonymous-boxes-001.htm */ + + #parent { height: 200px; position: relative; } + #child { float: left; height: 50%; width: 100px; background: green; position: relative } + #background { position: absolute; top: 0; left: 0; width: 100px; height: 100px; background: red } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-quotes-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-quotes-001.0.scss new file mode 100644 index 0000000000..3a4f2c68a2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-quotes-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-quotes-001.htm */ + + body { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-quotes-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-quotes-001.1.scss Binary files differnew file mode 100644 index 0000000000..f9ff59ef63 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-quotes-001.1.scss diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-001.0.scss new file mode 100644 index 0000000000..e81cd566d8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-space-001.htm */ + + body { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-001.1.scss Binary files differnew file mode 100644 index 0000000000..89cf375ace --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-001.1.scss diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-002.0.scss new file mode 100644 index 0000000000..f37bd48b03 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-002.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-space-002.htm */ + + body { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-002.1.scss Binary files differnew file mode 100644 index 0000000000..4ca1f3465a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-002.1.scss diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-be-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-be-001.0.scss new file mode 100644 index 0000000000..82b8dcb50a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-be-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-utf16-be-001.htm */ + + body { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-be-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-be-001.1.scss Binary files differnew file mode 100644 index 0000000000..3bf9f5f6b4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-be-001.1.scss diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-le-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-le-001.0.scss new file mode 100644 index 0000000000..92ca00bc53 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-le-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-utf16-le-001.htm */ + + body { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-le-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-le-001.1.scss Binary files differnew file mode 100644 index 0000000000..483b8494dd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-le-001.1.scss diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-001.0.scss new file mode 100644 index 0000000000..ed10b1ea02 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-001.0.scss @@ -0,0 +1,40 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-001.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + /* 100 x 120 bgpaint area */ + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-none.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-none.svg); + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-002.0.scss new file mode 100644 index 0000000000..849421d055 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-002.0.scss @@ -0,0 +1,42 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-002.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-width.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-width.svg); + } + .control { + width: 60px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-003.0.scss new file mode 100644 index 0000000000..baac57662f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-003.0.scss @@ -0,0 +1,42 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-003.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-height.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-height.svg); + } + .control { + height: 60px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-004.0.scss new file mode 100644 index 0000000000..22a6983830 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-004.0.scss @@ -0,0 +1,45 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-004.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-ratio-portrait.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-ratio-portrait.svg); + } + .cover .control { + width: 66px; + } + .limit .control { + width: 67px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-005.0.scss new file mode 100644 index 0000000000..cc0e002964 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-005.0.scss @@ -0,0 +1,45 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-005.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-ratio-landscape.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-ratio-landscape.svg); + } + .cover .control { + height: 53px; + } + .limit .control { + height: 54px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-006.0.scss new file mode 100644 index 0000000000..fda8699018 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-006.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-006.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-width-pc-height-pc.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-width-pc-height-pc.svg); + } + .control { + width: 32px; + height: 60px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-007.0.scss new file mode 100644 index 0000000000..09b38ffacb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-007.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-007.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-width-ratio.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-width-ratio.svg); + } + .control { + width: 40px; + height: 60px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-008.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-008.0.scss new file mode 100644 index 0000000000..f54ce9a61a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-008.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-008.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-height-ratio.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-height-ratio.svg); + } + .control { + width: 40px; + height: 60px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-009.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-009.0.scss new file mode 100644 index 0000000000..6b9b2d6456 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-009.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-009.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-width-height.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-width-height.svg); + } + .control { + width: 40px; + height: 60px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-display-types-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-display-types-001.0.scss new file mode 100644 index 0000000000..5a3d20fd24 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-display-types-001.0.scss @@ -0,0 +1,25 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-display-types-001.htm */ + +div { counter-reset:ctr; quotes:"\0022" "\0022" "\0022" "\0022"} + +div:before { + content:counter(ctr) url(support/square-outline-32x32.png) open-quote "Before " attr(class); + counter-increment:ctr; +} +div:after { + content:counter(ctr) url(support/square-outline-32x32.png) "After " attr(class) close-quote; + counter-increment:ctr; +} + +.block:before, .block:after { display:block; } +.inline:before, .inline:after { display:inline; } +.inline-block:before, .inline-block:after { display:inline-block; } +.table:before, .table:after { display:table; } +.inline-table:before, .inline-table:after { display:inline-table; } +.table-row-group:before, .table-row-group:after { display:table-row-group; } +.table-row:before, .table-row:after { display:table-row; } +.table-cell:before, .table-cell:after { display:table-cell; } +.table-caption:before, .table-caption:after { display:table-caption; } + +div { border:1px solid green; margin:5px; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-dynamic-attr-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-dynamic-attr-001.0.scss new file mode 100644 index 0000000000..b2b28a5c97 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-dynamic-attr-001.0.scss @@ -0,0 +1,12 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-dynamic-attr-001.htm */ + +body { + font-family:sans-serif; +} +body:before { + content:attr(my-attr); +} +body:after { + content:attr(my-attr-2); +} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-dynamic-restyle-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-dynamic-restyle-001.0.scss new file mode 100644 index 0000000000..4a1861941e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-dynamic-restyle-001.0.scss @@ -0,0 +1,11 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-dynamic-restyle-001.htm */ + +body:before { + content:"Before"; + border:inherit; +} +.cl:after { + display:block; + content:"After"; +} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-floated-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-floated-001.0.scss new file mode 100644 index 0000000000..324cae53d2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-floated-001.0.scss @@ -0,0 +1,29 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-floated-001.htm */ + +div { counter-reset:ctr; quotes:"\0022" "\0022" "\0022" "\0022"; } + +div:before { + content:counter(ctr) url(support/square-outline-32x32.png) open-quote "Before " attr(class); + counter-increment:ctr; +} +div:after { + content:counter(ctr) url(support/square-outline-32x32.png) "After " attr(class) close-quote; + counter-increment:ctr; +} + +.beforeleft:before { + float:left; +} +.beforeright:before { + float:right; +} +.afterleft:after { + float:left; +} +.afterright:after { + float:right; +} + +div { border:1px solid green; margin:5px; } +div { overflow:auto; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-images-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-images-001.0.scss new file mode 100644 index 0000000000..c419306c2a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-images-001.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-images-001.htm */ + +div:before { + content:url(missing-image.png); +} +div { border:1px solid green; margin:5px; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-positioned-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-positioned-001.0.scss new file mode 100644 index 0000000000..a5b7d7b26b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-positioned-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-positioned-001.htm */ + +div { counter-reset:ctr; quotes:"\0022" "\0022" "\0022" "\0022"; } + +.gen:before { + content:counter(ctr) url(support/square-outline-32x32.png) open-quote "Before " attr(class); + counter-increment:ctr; +} +.gen:after { + content:counter(ctr) url(support/square-outline-32x32.png) "After " attr(class) close-quote; + counter-increment:ctr; +} + +.abs:before { + position:absolute; + left:0; +} +.abs:after { + position:absolute; + right:0; +} + +.rel:before { + position:relative; + top:-10px; +} +.rel:after { + position:relative; + top:10px; +} + +div { border:1px solid green; margin:5px; height:100px; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-positioned-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-positioned-001.1.scss new file mode 100644 index 0000000000..33ee1ef76b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-positioned-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-positioned-001.htm */ +.style { position:relative; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-table-parts-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-table-parts-001.0.scss new file mode 100644 index 0000000000..f199f3ae10 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-table-parts-001.0.scss @@ -0,0 +1,44 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-table-parts-001.htm */ + +table, div.gen { counter-reset:ctr; quotes:"\0022" "\0022" "\0022" "\0022"; } + +.gen:before { + content:counter(ctr) url(support/square-outline-32x32.png) open-quote "Before " attr(class); + counter-increment:ctr; +} +.gen:after { + content:counter(ctr) url(support/square-outline-32x32.png) "After " attr(class) close-quote; + counter-increment:ctr; +} + +table { border:1px solid blue; } +td { border:1px solid cyan; } +td { border-spacing:0; padding:0; } + +tr.gen:before, tr.gen:after { display:table-cell; } +tbody.gen:before, tbody.gen:after { display:table-row; } +table.gen:before, table.gen:after { display:table-row-group; } +table.col:before, table.gen.col:after { display:table-column-group; } +/* note reordering here! */ +table.headfoot:after { display:table-header-group; } +table.headfoot:before { display:table-footer-group; } + +.cell { display:table-cell; } +.row { display:table-row; } +.rowgroup { display:table-row-group; } +.table { display:table; } +div.gencell:before, div.gencell:after { display:table-cell; } +div.genrow:before, div.genrow:after { display:table-row; } +div.genblock:before, div.genblock:after { display:block; } +div.geninline:before, div.geninline:after { display:inline; } + +div { border:1px solid green; margin:5px; } + +.varyheight:before { height:100px; background:yellow; } +.varyheight > div { height:80px; background:orange; } +.varyheight:after { height:60px; background:brown; } + +.varywidth:before { background:yellow; } +.varywidth > div { background:orange; } +.varywidth:after { background:brown; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-table-parts-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-table-parts-001.1.scss new file mode 100644 index 0000000000..652b7fb64f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-table-parts-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-table-parts-001.htm */ +.style { border:none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-table-whitespace-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-table-whitespace-001.0.scss new file mode 100644 index 0000000000..a4bd9b3f27 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-table-whitespace-001.0.scss @@ -0,0 +1,17 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-table-whitespace-001.htm */ + +.gen0:before { + padding:1px; +} +.gen1:before { + content: " "; +} +.gen2:before { + content: attr(missing); +} +.gen3:before { + content: url(missing-image.png); +} + +div { border:1px solid green; margin:5px; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-001.0.scss new file mode 100644 index 0000000000..f2d73053d4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-001.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-append-001.htm */ + + + body > span { outline: 1px dotted black; } + body > span > span { display: block; width: 10em; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-002.0.scss new file mode 100644 index 0000000000..15821f265e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-002.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-append-002.htm */ + + #outermost { border: 2px solid; } + #outer { border: 4px solid yellow; } + #inner { border: 6px sold green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-002.1.scss new file mode 100644 index 0000000000..92b70020f2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-append-002.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.0.scss new file mode 100644 index 0000000000..c59fe1cefd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-001.htm */ +.style { direction: ltr } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.1.scss new file mode 100644 index 0000000000..24f75e5c03 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-001.htm */ +.style { border: 5px solid blue; border-left: none; border-right: none; padding-right: 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.2.scss new file mode 100644 index 0000000000..578cdb672b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-001.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.0.scss new file mode 100644 index 0000000000..ebd82de172 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-002.htm */ +.style { direction: rtl } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.1.scss new file mode 100644 index 0000000000..800d89067f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-002.htm */ +.style { border: 5px solid blue; border-left: none; border-right: none; padding-right: 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.2.scss new file mode 100644 index 0000000000..47d968fb36 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-002.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.0.scss new file mode 100644 index 0000000000..bec0ff7a45 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-003.htm */ +.style { direction: ltr } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.1.scss new file mode 100644 index 0000000000..d55949134e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-003.htm */ +.style { border: 5px solid blue; border-left: none; border-right: none; padding-left: 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.2.scss new file mode 100644 index 0000000000..972cbf30eb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-003.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.0.scss new file mode 100644 index 0000000000..6259effef6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-004.htm */ +.style { direction: rtl } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.1.scss new file mode 100644 index 0000000000..85f7e37a8c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-004.htm */ +.style { border: 5px solid blue; border-left: none; border-right: none; padding-left: 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.2.scss new file mode 100644 index 0000000000..e4dfb13524 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-004.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.0.scss new file mode 100644 index 0000000000..081e58affc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-float-between-001.htm */ +.style { position: relative; left: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.1.scss new file mode 100644 index 0000000000..99babd326f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-float-between-001.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.2.scss new file mode 100644 index 0000000000..8f5a27f693 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-float-between-001.htm */ +.style { float: left } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001a.0.scss new file mode 100644 index 0000000000..4482654240 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001a.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001a.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001b.0.scss new file mode 100644 index 0000000000..d0b1193abc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001b.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001c.0.scss new file mode 100644 index 0000000000..a820d992bc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001c.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001c.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001d.0.scss new file mode 100644 index 0000000000..dc7c044309 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001d.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001d.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001e.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001e.0.scss new file mode 100644 index 0000000000..4ee59b7c3c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001e.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001e.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001f.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001f.0.scss new file mode 100644 index 0000000000..544fddaee6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001f.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001f.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001g.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001g.0.scss new file mode 100644 index 0000000000..5bbfb01512 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001g.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001g.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001h.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001h.0.scss new file mode 100644 index 0000000000..d03bbf51a7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001h.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001h.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001i.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001i.0.scss new file mode 100644 index 0000000000..d48cc6477c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001i.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001i.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001j.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001j.0.scss new file mode 100644 index 0000000000..8662fec547 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001j.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001j.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001k.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001k.0.scss new file mode 100644 index 0000000000..ed1c00b772 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001k.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001k.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001l.0.scss new file mode 100644 index 0000000000..7e792b2f0b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001l.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001l.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002a.0.scss new file mode 100644 index 0000000000..76a2977e4f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002a.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002a.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002b.0.scss new file mode 100644 index 0000000000..1c468dc942 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002b.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002c.0.scss new file mode 100644 index 0000000000..17517332ea --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002c.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002c.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002d.0.scss new file mode 100644 index 0000000000..697822ae0a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002d.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002d.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002e.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002e.0.scss new file mode 100644 index 0000000000..20d8d46d16 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002e.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002e.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002f.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002f.0.scss new file mode 100644 index 0000000000..b0680028e7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002f.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002f.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002g.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002g.0.scss new file mode 100644 index 0000000000..67bc7ebadc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002g.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002g.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002h.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002h.0.scss new file mode 100644 index 0000000000..5c7c0a767d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002h.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002h.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002i.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002i.0.scss new file mode 100644 index 0000000000..810b088676 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002i.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002i.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-003.0.scss new file mode 100644 index 0000000000..71760d321c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-003.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-003.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-004.0.scss new file mode 100644 index 0000000000..7d18b5f0bb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-004.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-004.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-006.0.scss new file mode 100644 index 0000000000..5fae99411f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-006.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-006.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-007.0.scss new file mode 100644 index 0000000000..3e59471379 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-007.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-007.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008a.0.scss new file mode 100644 index 0000000000..840e4c41ac --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008a.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-008a.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008b.0.scss new file mode 100644 index 0000000000..b1e3f46489 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-008b.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008c.0.scss new file mode 100644 index 0000000000..9ccc845aa6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008c.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-008c.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-009.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-009.0.scss new file mode 100644 index 0000000000..134414535f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-009.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-009.htm */ + + body > span { border: 3px solid blue } + body > span > span { border: 3px solid cyan } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-010.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-010.0.scss new file mode 100644 index 0000000000..62431c82a3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-010.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-010.htm */ + + body > span { border: 3px solid blue } + body > span > span { border: 3px solid cyan } + body > span > span:after { content: "Ten" } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-011.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-011.0.scss new file mode 100644 index 0000000000..2844241d70 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-011.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-011.htm */ + + body > span { border: 3px solid blue } + body > span > span { border: 3px solid cyan } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-012.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-012.0.scss new file mode 100644 index 0000000000..105753b69f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-012.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-012.htm */ + + #i { display: inline; border: 2px solid; } + #i:after { display: block; content: "Three"; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-013.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-013.0.scss new file mode 100644 index 0000000000..dd0da56c7d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-013.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-013.htm */ + + #i { border: 2px solid; } + #i:before { display: block; content: "One"; } + #i:after { content: "Three"; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-013.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-013.1.scss new file mode 100644 index 0000000000..fce9f7e44a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-013.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-013.htm */ +.style { display: none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-014.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-014.0.scss new file mode 100644 index 0000000000..0d1f7f3a3e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-014.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-014.htm */ + + #i { border: 2px solid; } + #i:before { display: block; content: "One"; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-014.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-014.1.scss new file mode 100644 index 0000000000..4fb8ca38ec --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-014.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-014.htm */ +.style { display: none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-015.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-015.0.scss new file mode 100644 index 0000000000..064cb0734c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-015.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-015.htm */ + + #i { display: inline; border: 2px solid; } + #i:after { display: block; content: "Three"; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016a.0.scss new file mode 100644 index 0000000000..27a0dd79bd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-016a.htm */ + + #i { border: 2px solid; } + #i:after { display: block; content: "Two"; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016a.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016a.1.scss new file mode 100644 index 0000000000..e2ddc868f4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016a.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-016a.htm */ +.style { display: none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016b.0.scss new file mode 100644 index 0000000000..7b53f1212b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-016b.htm */ + + #i { border: 2px solid; } + #i:after { display: block; content: "Two"; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.0.scss new file mode 100644 index 0000000000..fb90ff7fde --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-017.htm */ +.style { width: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.1.scss new file mode 100644 index 0000000000..7efbd77d83 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-017.htm */ +.style { border: 2px solid blue; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.2.scss new file mode 100644 index 0000000000..95aac0261c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-017.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001a.0.scss new file mode 100644 index 0000000000..d683f3fa54 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001a.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-001a.htm */ +.style { direction: ltr; width: 100px; border: 1px solid green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001a.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001a.1.scss new file mode 100644 index 0000000000..aae6310bf0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001a.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-001a.htm */ +.style { display: block; height: 20px; width: 80px; margin: 10px; border: 5px solid black } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.0.scss new file mode 100644 index 0000000000..4a040231ea --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-001b.htm */ +.style { direction: ltr; width: 100px; border: 1px solid green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.1.scss new file mode 100644 index 0000000000..5f99cd4c5c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-001b.htm */ +.style { direction: rtl } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.2.scss new file mode 100644 index 0000000000..bede015e4e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-001b.htm */ +.style { display: block; height: 20px; width: 80px; margin: 10px; border: 5px solid black } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002a.0.scss new file mode 100644 index 0000000000..7c7cbd0808 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002a.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-002a.htm */ +.style { direction: rtl; width: 100px; border: 1px solid green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002a.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002a.1.scss new file mode 100644 index 0000000000..305b8ac11a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002a.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-002a.htm */ +.style { display: block; height: 20px; width: 80px; margin: 10px; border: 5px solid black } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.0.scss new file mode 100644 index 0000000000..7b8252e044 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-002b.htm */ +.style { direction: rtl; width: 100px; border: 1px solid green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.1.scss new file mode 100644 index 0000000000..11e90f792e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-002b.htm */ +.style { direction: ltr } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.2.scss new file mode 100644 index 0000000000..3416f8de01 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-002b.htm */ +.style { display: block; height: 20px; width: 80px; margin: 10px; border: 5px solid black } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-001.0.scss new file mode 100644 index 0000000000..e78538e895 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-nested-001.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-002.0.scss new file mode 100644 index 0000000000..9367c041d0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-nested-002.htm */ +.style { border: 5px solid blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-002.1.scss new file mode 100644 index 0000000000..fee6eb9e60 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-nested-002.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-percents-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-percents-001.0.scss new file mode 100644 index 0000000000..efb841d5dc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-percents-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-percents-001.htm */ +.style { height: 200px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-percents-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-percents-001.1.scss new file mode 100644 index 0000000000..57e6d10c49 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-percents-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-percents-001.htm */ +.style { display: block; height: 50%; border: 10px solid black } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-001.0.scss new file mode 100644 index 0000000000..ebe1d5373b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-remove-001.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-002.0.scss new file mode 100644 index 0000000000..ca9c6e7a45 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-002.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-remove-002.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-003.0.scss new file mode 100644 index 0000000000..dc223e8297 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-003.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-remove-003.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-004.0.scss new file mode 100644 index 0000000000..ed1891d7f0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-004.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-remove-004.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-005.0.scss new file mode 100644 index 0000000000..c3f1c4fcc0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-005.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-remove-005.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-006.0.scss new file mode 100644 index 0000000000..2f4d5643be --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-006.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-remove-006.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-whitespace-001a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-whitespace-001a.0.scss new file mode 100644 index 0000000000..a0fdf69e23 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-whitespace-001a.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-whitespace-001a.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-whitespace-001b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-whitespace-001b.0.scss new file mode 100644 index 0000000000..4c860c2a7e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-whitespace-001b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-whitespace-001b.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.0.scss new file mode 100644 index 0000000000..898d753e68 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-001.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.1.scss new file mode 100644 index 0000000000..7a2f6b66db --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-001.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.2.scss new file mode 100644 index 0000000000..bfd8fdb6e5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-001.htm */ +.style { border-style:none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.0.scss new file mode 100644 index 0000000000..e0dbae8b77 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-002.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.1.scss new file mode 100644 index 0000000000..a5f32321c6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-002.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.2.scss new file mode 100644 index 0000000000..49b52904b4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-002.htm */ +.style { border-width:11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-003.0.scss new file mode 100644 index 0000000000..8b018c1980 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-003.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-003.1.scss new file mode 100644 index 0000000000..c4dc834384 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-003.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.0.scss new file mode 100644 index 0000000000..1f0a0f3c56 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-004.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.1.scss new file mode 100644 index 0000000000..14810d15b6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-004.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.2.scss new file mode 100644 index 0000000000..15f89578e1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-004.htm */ +.style { border-style:none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.0.scss new file mode 100644 index 0000000000..5117efb468 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-005.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.1.scss new file mode 100644 index 0000000000..2e248a0aaa --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-005.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.2.scss new file mode 100644 index 0000000000..15ba20a79f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-005.htm */ +.style { border-style:none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.0.scss new file mode 100644 index 0000000000..d6af94204f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-001.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.1.scss new file mode 100644 index 0000000000..1d942d6b38 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-001.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.2.scss new file mode 100644 index 0000000000..27a43b6bd8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-001.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.0.scss new file mode 100644 index 0000000000..ae15dde154 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-002.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.1.scss new file mode 100644 index 0000000000..8ee152dc38 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-002.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.2.scss new file mode 100644 index 0000000000..c6318a3584 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-002.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.0.scss new file mode 100644 index 0000000000..0d7f407a9d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-003.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.1.scss new file mode 100644 index 0000000000..e58b8bb8df --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-003.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.2.scss new file mode 100644 index 0000000000..cadad9538f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-003.htm */ +.style { border:outset green 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.0.scss new file mode 100644 index 0000000000..ba42b5052f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-001.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.1.scss new file mode 100644 index 0000000000..262d6bbedd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-001.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.2.scss new file mode 100644 index 0000000000..d32773435c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-001.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.0.scss new file mode 100644 index 0000000000..4ca986a899 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-002.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.1.scss new file mode 100644 index 0000000000..caf207660d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-002.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.2.scss new file mode 100644 index 0000000000..f7228f354e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-002.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.0.scss new file mode 100644 index 0000000000..d5b7eae31a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-003.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.1.scss new file mode 100644 index 0000000000..4b42a2998c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-003.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.2.scss new file mode 100644 index 0000000000..a967891706 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-003.htm */ +.style { border:outset green 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.0.scss new file mode 100644 index 0000000000..070b886636 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-001.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.1.scss new file mode 100644 index 0000000000..0aec943a6c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-001.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.2.scss new file mode 100644 index 0000000000..1c23b85d86 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-001.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.0.scss new file mode 100644 index 0000000000..7bfdeac373 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-002.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.1.scss new file mode 100644 index 0000000000..f50de68330 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-002.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.2.scss new file mode 100644 index 0000000000..62bb238c7a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-002.htm */ +.style { border:solid green 2px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.0.scss new file mode 100644 index 0000000000..a18235986c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-003.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.1.scss new file mode 100644 index 0000000000..16f289c84f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-003.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.2.scss new file mode 100644 index 0000000000..0cef689399 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-003.htm */ +.style { border:outset green 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.0.scss new file mode 100644 index 0000000000..aa87c0c1d3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-001.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.1.scss new file mode 100644 index 0000000000..9d26fe3df3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-001.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.2.scss new file mode 100644 index 0000000000..7195bcef72 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-001.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.0.scss new file mode 100644 index 0000000000..be951ef050 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-002.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.1.scss new file mode 100644 index 0000000000..8fde9220db --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-002.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.2.scss new file mode 100644 index 0000000000..86f188e449 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-002.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.0.scss new file mode 100644 index 0000000000..7a94d7c74b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-003.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.1.scss new file mode 100644 index 0000000000..2c43199f38 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-003.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.2.scss new file mode 100644 index 0000000000..08d7e668d6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-003.htm */ +.style { border:outset green 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-001.0.scss new file mode 100644 index 0000000000..98f04c7a57 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-table-001.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-001.1.scss new file mode 100644 index 0000000000..7a7cf28388 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-table-001.htm */ +.style { border-collapse:collapse; border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-002.0.scss new file mode 100644 index 0000000000..d5453532b4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-table-002.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-002.1.scss new file mode 100644 index 0000000000..da3a1b0a1b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-table-002.htm */ +.style { border-collapse:collapse; border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-003.0.scss new file mode 100644 index 0000000000..aff4d99c71 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-table-003.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-003.1.scss new file mode 100644 index 0000000000..fd48bad69d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-table-003.htm */ +.style { border-collapse:collapse; border:none green 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.0.scss new file mode 100644 index 0000000000..10da13d64d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-offset-001.htm */ + +td {width: 100px; text-align:center} +div {position:absolute; border:green 4px solid} + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.1.scss new file mode 100644 index 0000000000..c87fcbc76a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-offset-001.htm */ +.style { border-collapse:collapse; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.2.scss new file mode 100644 index 0000000000..340f309e2e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-offset-001.htm */ +.style { border:solid 4px orange; height:30px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.0.scss new file mode 100644 index 0000000000..d33ffa4284 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-offset-002.htm */ + +td {width: 100px; text-align:center} +caption {border:solid 4px green} + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.1.scss new file mode 100644 index 0000000000..88535218ab --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-offset-002.htm */ +.style { border-collapse:collapse; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.2.scss new file mode 100644 index 0000000000..ee3eb8c007 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-offset-002.htm */ +.style { border:solid 4px orange; height:30px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/charset-attr-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/charset-attr-001.0.scss new file mode 100644 index 0000000000..b09d86f8f7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/charset-attr-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/charset-attr-001.htm */ + + body { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/charset-attr-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/charset-attr-001.1.scss Binary files differnew file mode 100644 index 0000000000..bfaba9dc01 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/charset-attr-001.1.scss diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-1.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-1.0.scss new file mode 100644 index 0000000000..f0a8248396 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-1.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-1.html */ +li,p { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-10.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-10.0.scss new file mode 100644 index 0000000000..d0d1a14d60 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-10.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-10.html */ +p { background-color : red } +p[title$="bar"] { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-11.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-11.0.scss new file mode 100644 index 0000000000..ca558792b0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-11.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-11.html */ +p { background-color : red } +p[title*="bar"] { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-13.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-13.0.scss new file mode 100644 index 0000000000..344a9e8e46 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-13.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-13.html */ +li { background-color : red } +.t1 { background-color : lime } +li.t2 { background-color : lime } +.t3 { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14.0.scss new file mode 100644 index 0000000000..faf4d3c7cb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14.0.scss @@ -0,0 +1,10 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-14.html */ +p { background-color : red ; border : thick solid red ; padding : 1em } +p.t1 { background-color : lime } +p.t2 { border : thick solid green } + +div { background: green; color: white; } +div.teST { background: red; color: yellow; } +div.te { background: red; color: yellow; } +div.st { background: red; color: yellow; } +div.te.st { background: red; color: yellow; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-144.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-144.0.scss new file mode 100644 index 0000000000..c669785ac7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-144.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-144.html */ +div :not(:enabled):not(:disabled) { background: lime; } +p { background : red;} diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-148.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-148.0.scss new file mode 100644 index 0000000000..a41bb1ed85 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-148.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-148.html */ + + p { background: lime; } + p:empty { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-149.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-149.0.scss new file mode 100644 index 0000000000..23eba2f553 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-149.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-149.html */ + + address:empty { background: lime; } + address { background: red; margin: 0; height: 1em; } + .text { margin: -1em 0 0 0; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-149b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-149b.0.scss new file mode 100644 index 0000000000..ae6c5ca1c7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-149b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-149b.html */ + + address:empty { background: lime; } + address { background: red; margin: 0; height: 1em; } + .text { margin: -1em 0 0 0; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14b.0.scss new file mode 100644 index 0000000000..5851edc2e3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14b.0.scss @@ -0,0 +1,10 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-14b.html */ + +p { background: green; color: white; } +.t1.fail { background: red; color: yellow; } +.fail.t1 { background: red; color: yellow; } +.t2.fail { background: red; color: yellow; } +.fail.t2 { background: red; color: yellow; } +/* Note: This is a valid test even per CSS1, since in CSS1 those rules + are invalid and should be dropped. */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14c.0.scss new file mode 100644 index 0000000000..d32fec8496 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14c.0.scss @@ -0,0 +1,9 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-14c.html */ + +p { background: red; color: yellow; } +p.t1.t2 { background: green; color: white; } +div { background: green; color: white; } +div.t1 { background: red; color: yellow; } +address { background: red; color: yellow; } +address.t5.t5 { background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14d.0.scss new file mode 100644 index 0000000000..3432db6913 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14d.0.scss @@ -0,0 +1,8 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-14d.html */ + +p { background: green; color: white; } +.t1:not(.t2) { background: red; color: yellow; } +:not(.t2).t1 { background: red; color: yellow; } +.t2:not(.t1) { background: red; color: yellow; } +:not(.t1).t2 { background: red; color: yellow; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14e.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14e.0.scss new file mode 100644 index 0000000000..979edeed91 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14e.0.scss @@ -0,0 +1,9 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-14e.html */ + +p { background: green; color: white; } +p:not(.t1):not(.t2) { background: red; color: yellow; } +div { background: red; color: yellow; } +div:not(.t1) { background: green; color: white; } +address { background: green; color: white; } +address:not(.t5):not(.t5) { background: red; color: yellow; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-15.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-15.0.scss new file mode 100644 index 0000000000..ff1d3a2d9b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-15.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-15.html */ +li { background-color : red } +#t1 { background-color : lime } +li#t2 { background-color : lime } +li#t3 { background-color : lime } +#t4 { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-150.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-150.0.scss new file mode 100644 index 0000000000..bb9cc2cb7c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-150.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-150.html */ + + address:empty { background: lime; } + address { background: red; margin: 0; height: 1em; } + .text { margin: -1em 0 0 0; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-151.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-151.0.scss new file mode 100644 index 0000000000..ec229bdd33 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-151.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-151.html */ + + address { background: lime; margin: 0; height: 1em; } + address:empty { background: red; } + .text { margin: -1em 0 0 0; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-152.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-152.0.scss new file mode 100644 index 0000000000..bf765f8b5d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-152.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-152.html */ + + address { background: lime; margin: 0; height: 1em; } + address:empty { background: red; } + .text { margin: -1em 0 0 0; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155.0.scss new file mode 100644 index 0000000000..1f073c35b4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-155.html */ + + p { background: lime; } + .5cm { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155a.0.scss new file mode 100644 index 0000000000..9ce3a19428 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-155a.html */ + + p { background: lime; } + .\5cm { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155b.0.scss new file mode 100644 index 0000000000..83340f5351 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155b.0.scss @@ -0,0 +1,10 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-155b.html */ + + p { background: lime; } + .two\ words { background: red; } + + /* the "." and "~=" forms match on a space separated list of words. + In such a list, a word containing a space can never match, since it + would by definition be two words. */ + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155c.0.scss new file mode 100644 index 0000000000..516c8de4e0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-155c.html */ + + p { background: lime; } + .one.word { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155d.0.scss new file mode 100644 index 0000000000..6930469379 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155d.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-155d.html */ + + .one\.word { background: lime; } + p { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156.0.scss new file mode 100644 index 0000000000..058b6b4290 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-156.html */ + + p { background: lime; } + foo & address, p { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156b.0.scss new file mode 100644 index 0000000000..033b8f59a9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-156b.html */ + + foo & address, p { background: red; } + p { background: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156c.0.scss new file mode 100644 index 0000000000..62d2a7ceb6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-156c.html */ + + foo & address, p { background: red ! important; } + p { background: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-159.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-159.0.scss new file mode 100644 index 0000000000..6f85988756 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-159.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-159.html */ + + ::selection { background: lime; } + :selection { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-15b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-15b.0.scss new file mode 100644 index 0000000000..b2fb3ac6ae --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-15b.0.scss @@ -0,0 +1,9 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-15b.html */ + +p { background: green; color: white; } +#test#fail { background: red; color: yellow; } +#fail#test { background: red; color: yellow; } +#fail { background: red; color: yellow; } +div { background: red; color: yellow; } +#pass#pass { background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-16.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-16.0.scss new file mode 100644 index 0000000000..7b909a1ac1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-16.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-16.html */ +p.test a { background-color : red } +p.test *:link { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-160.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-160.0.scss new file mode 100644 index 0000000000..45c7c74e02 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-160.0.scss @@ -0,0 +1,7 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-160.html */ + + p { background: lime; } + p:subject { background: red; } /* this is not valid CSS, and if UAs + implemented the experimental :subject pseudo-class they should have + used the :-vnd-ident syntax. */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-161.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-161.0.scss new file mode 100644 index 0000000000..c10cdd2dfd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-161.0.scss @@ -0,0 +1,26 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-161.html */ + + p { background: lime; } + p * { background: lime; } + p > * { background: lime; } + p + * { background: lime; } + p ~ * { background: lime; } + + /* let's try some pseudos that are not valid CSS but are likely to + be implemented as extensions in some UAs. These should not be + recognised, as UAs implementing such extensions should use the + :-vnd-ident syntax. */ + + :canvas { background: red; } + :viewport { background: red; } + :window { background: red; } + :menu { background: red; } + :table { background: red; } + :select { background: red; } + ::canvas { background: red; } + ::viewport { background: red; } + ::window { background: red; } + ::menu { background: red; } + ::table { background: red; } + ::select { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-166.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-166.0.scss new file mode 100644 index 0000000000..de27d9ffd2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-166.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-166.html */ + + p:first-letter { background-color: red; } + p::first-letter { background-color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-166a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-166a.0.scss new file mode 100644 index 0000000000..ed465fe93b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-166a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-166a.html */ + + p::first-letter { background-color: red; } + p:first-letter { background-color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-167.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-167.0.scss new file mode 100644 index 0000000000..5aad6a87bd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-167.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-167.html */ + + p:first-line { background-color: red; } + p::first-line { background-color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-167a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-167a.0.scss new file mode 100644 index 0000000000..109defc654 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-167a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-167a.html */ + + p::first-line { background-color: red; } + p:first-line { background-color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-168.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-168.0.scss new file mode 100644 index 0000000000..81f5c1e9b1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-168.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-168.html */ + + span:before { background-color: red; content: 'FAILED'; } + span::before { background-color: lime; content: 'PASSED'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-168a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-168a.0.scss new file mode 100644 index 0000000000..0898dd7d8c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-168a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-168a.html */ + + span::before { background-color: red; content: 'FAILED'; } + span:before { background-color: lime; content: 'PASSED'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-169.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-169.0.scss new file mode 100644 index 0000000000..69ddf7fccc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-169.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-169.html */ + + span:after { background-color: red; content: 'FAILED'; } + span::after { background-color: lime; content: 'PASSED'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-169a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-169a.0.scss new file mode 100644 index 0000000000..efb74238ec --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-169a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-169a.html */ + + span::after { background-color: red; content: 'FAILED'; } + span:after { background-color: lime; content: 'PASSED'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-17.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-17.0.scss new file mode 100644 index 0000000000..2b881ad09d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-17.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-17.html */ +p.test a { background-color : red } +p.test *:visited { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170.0.scss new file mode 100644 index 0000000000..e33d2f5b12 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-170.html */ + + span { color: red; } + span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span { color: green } /* 2049 */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170a.0.scss new file mode 100644 index 0000000000..7d09cee5ee --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-170a.html */ + + .span { color: red; } + .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span { color: green } /* 2049 */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170b.0.scss new file mode 100644 index 0000000000..9144c18516 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-170b.html */ + + .span { color: red; } + .span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span { color: green } /* 2049 */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170c.0.scss new file mode 100644 index 0000000000..adcf326e76 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-170c.html */ + + p.span { color: red; } + p:not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span) { color: green } /* 2049 */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170d.0.scss new file mode 100644 index 0000000000..1ace26ae1f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170d.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-170d.html */ + + p { color: red; } + p:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child { color: green } /* 2049 */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175a.0.scss new file mode 100644 index 0000000000..eb61d12ff2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-175a.html */ + + p { color: green; } + .13 { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175b.0.scss new file mode 100644 index 0000000000..91066d4671 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-175b.html */ + + p { color: green; } + .\13 { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175c.0.scss new file mode 100644 index 0000000000..d7555e9fa0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-175c.html */ + + p { color: red; } + .\31 \33 { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-176.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-176.0.scss new file mode 100644 index 0000000000..474be8d9e8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-176.0.scss @@ -0,0 +1,11 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-176.html */ + +p { background: red; color: yellow; } +p:not(#other).class:not(.fail).test#id#id { background: green; color: white; } +div { background: green; color: white; } +div:not(#theid).class:not(.fail).test#theid#theid { background: red; color: yellow; } +div:not(#other).notclass:not(.fail).test#theid#theid { background: red; color: yellow; } +div:not(#other).class:not(.test).test#theid#theid { background: red; color: yellow; } +div:not(#other).class:not(.fail).nottest#theid#theid { background: red; color: yellow; } +div:not(#other).class:not(.fail).nottest#theid#other { background: red; color: yellow; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-177a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-177a.0.scss new file mode 100644 index 0000000000..29359bcba2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-177a.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-177a.html */ + + p:selection { color: yellow; background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-177b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-177b.0.scss new file mode 100644 index 0000000000..64f2c84901 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-177b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-177b.html */ + + div { color: green; } + p::first-child { color: yellow; background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-178.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-178.0.scss new file mode 100644 index 0000000000..92b765dff4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-178.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-178.html */ + + div { color: green; } + p:not(:first-line) { color: yellow; background: red; } + p:not(:after) { color: yellow; background: red; content: ' THIS TEST HAS FAILED! '; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-179.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-179.0.scss new file mode 100644 index 0000000000..ce5e3a8630 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-179.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-179.html */ + + p { color: green; } + span:first-line { background: red; color: yellow; font-size: 4em; } + span::first-line { background: red; color: yellow; font-size: 4em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-179a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-179a.0.scss new file mode 100644 index 0000000000..660e7508dc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-179a.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-179a.html */ + + p { color: green; } + p:first-line { background: red; color: yellow; font-size: 4em; } + p::first-line { background: red; color: yellow; font-size: 4em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18.0.scss new file mode 100644 index 0000000000..33067afba0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18.0.scss @@ -0,0 +1,8 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-18.html */ +p:hover { background-color : lime } +a:hover { background-color : lime } + +tr:hover { background-color : green } +td:hover { background-color : lime } + +table { border-spacing: 5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-180a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-180a.0.scss new file mode 100644 index 0000000000..a7a641bcb6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-180a.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-180a.html */ + + p { color: green; } + p:first-letter { background: red; color: yellow; font-size: 4em; } + p::first-letter { background: red; color: yellow; font-size: 4em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-181.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-181.0.scss new file mode 100644 index 0000000000..24dbd1031d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-181.0.scss @@ -0,0 +1,15 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-181.html */ + + .cs { color: green; } + .cs P { background: red; color: yellow; } + .cs .a { background: red; color: yellow; } + .cs .span1 span { background: red; color: yellow; } + .cs .span2 { color: red; } + .cs .span2 SPAN { color: green; } + .cs .span2 span { background: red; color: yellow; } + .ci { color: red; } + .ci P { background: green; color: white; } + .ci .a { background: green; color: white; } + .ci .span1 span { background: green; color: white; } + .ci .span2 SPAN { background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184a.0.scss new file mode 100644 index 0000000000..7d5c5fd2d4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-184a.html */ + +p { color: lime; } +p[class$=""] { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184b.0.scss new file mode 100644 index 0000000000..f0e5f98b15 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-184b.html */ + +p { color: lime; } +p[class^=""] { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184c.0.scss new file mode 100644 index 0000000000..892f85f7f3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-184c.html */ + +p { color: lime; } +p[class*=""] { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184d.0.scss new file mode 100644 index 0000000000..ad721d0131 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184d.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-184d.html */ + +p { color: red; } +p:not([class$=""]) { color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184e.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184e.0.scss new file mode 100644 index 0000000000..b1ae45984c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184e.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-184e.html */ + +p { color: red; } +p:not([class^=""]) { color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184f.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184f.0.scss new file mode 100644 index 0000000000..8d461ff6d6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184f.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-184f.html */ + +p { color: red; } +p:not([class*=""]) { color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18a.0.scss new file mode 100644 index 0000000000..ccd04a2cef --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18a.0.scss @@ -0,0 +1,12 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-18a.html */ + +p { color: navy; } + +.a a:hover { background: green; color: white; } + +.b a:hover { background: red; color: yellow; } +.b a:link { background: green; color: white; } + +.c :link { background: green; color: white; } +.c :visited:hover { background: red; color: yellow; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18b.0.scss new file mode 100644 index 0000000000..87405f66f8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-18b.html */ +div:hover > p:first-child { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18c.0.scss new file mode 100644 index 0000000000..519cbce0ee --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-18c.html */ + +:link, :visited { color: navy; text-decoration: none; } +:link:hover span { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-19.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-19.0.scss new file mode 100644 index 0000000000..8b13ef8766 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-19.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-19.html */ +a:active { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-19b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-19b.0.scss new file mode 100644 index 0000000000..c5ddec6c1d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-19b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-19b.html */ +button:active { background: green; color: white; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-2.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-2.0.scss new file mode 100644 index 0000000000..ae64542b1c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-2.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-2.html */ +address { background-color: lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-20.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-20.0.scss new file mode 100644 index 0000000000..5a2ef60ca9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-20.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-20.html */ +a:focus { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21.0.scss new file mode 100644 index 0000000000..c391cb4d6f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-21.html */ +p:target { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21b.0.scss new file mode 100644 index 0000000000..ef7b904578 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21b.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-21b.html */ +p { background-color: lime; } +p:target { background-color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21c.0.scss new file mode 100644 index 0000000000..842e11db74 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21c.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-21c.html */ +:root { background-color: green; } +:target { background-color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-22.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-22.0.scss new file mode 100644 index 0000000000..62a0370b78 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-22.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-22.html */ +ul > li { background-color : red } +li:lang(en-GB) { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-23.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-23.0.scss new file mode 100644 index 0000000000..4415be07a9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-23.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-23.html */ +button { background-color : red } +input { background-color : red } +button:enabled { background-color : lime } +input:enabled { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-24.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-24.0.scss new file mode 100644 index 0000000000..40f518adc3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-24.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-24.html */ +button { background-color : red } +input { background-color : red } +button:disabled { background-color : lime } +input:disabled { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-25.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-25.0.scss new file mode 100644 index 0000000000..a9d194c71e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-25.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-25.html */ +input, span { background-color : red } +input:checked, input:checked + span { background-color : lime} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27.0.scss new file mode 100644 index 0000000000..6451254f09 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-27.html */ +html { background-color : red } +*:root { background-color: lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27a.0.scss new file mode 100644 index 0000000000..4482386911 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27a.0.scss @@ -0,0 +1,17 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-27a.html */ + +:root:first-child { background-color: red; } +:root:last-child { background-color: red; } +:root:only-child { background-color: red; } +:root:nth-child(1) { background-color: red; } +:root:nth-child(n) { background-color: red; } +:root:nth-last-child(1) { background-color: red; } +:root:nth-last-child(n) { background-color: red; } +:root:first-of-type { background-color: red; } +:root:last-of-type { background-color: red; } +:root:only-of-type { background-color: red; } +:root:nth-of-type(1) { background-color: red; } +:root:nth-of-type(n) { background-color: red; } +:root:nth-last-of-type(1) { background-color: red; } +:root:nth-last-of-type(n) { background-color: red; } +p { color: green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27b.0.scss new file mode 100644 index 0000000000..a21c7dbf6d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-27b.html */ +* html { background-color: red; } +* :root { background-color: red; } +p { color: green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-28.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-28.0.scss new file mode 100644 index 0000000000..3546bfc898 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-28.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-28.html */ +.red { background-color : red } +ul > li:nth-child(odd) { background-color : lime } +ol > li:nth-child(even) { background-color : lime } +table.t1 tr:nth-child(-n+4) { background-color : lime } +table.t2 td:nth-child(3n+1) { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-28b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-28b.0.scss new file mode 100644 index 0000000000..a91ad30283 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-28b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-28b.html */ +.green { background-color : lime ! important } +ul > li:nth-child(odd) { background-color : red } +ol > li:nth-child(even) { background-color : red } +table.t1 tr:nth-child(-n+4) { background-color : red } +table.t2 td:nth-child(3n+1) { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-29.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-29.0.scss new file mode 100644 index 0000000000..0860aa4956 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-29.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-29.html */ +.red { background-color : red } +ul > li:nth-last-child(odd) { background-color : green } +ol > li:nth-last-child(even) { background-color : green } +table.t1 tr:nth-last-child(-n+4) { background-color : green } +table.t2 td:nth-last-child(3n+1) { background-color : green } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-29b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-29b.0.scss new file mode 100644 index 0000000000..eb55cc8de4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-29b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-29b.html */ +.green { background-color : lime ! important } +ul > li:nth-last-child(odd) { background-color : red } +ol > li:nth-last-child(even) { background-color : red } +table.t1 tr:nth-last-child(-n+4) { background-color : red } +table.t2 td:nth-last-child(3n+1) { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-30.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-30.0.scss new file mode 100644 index 0000000000..46d21fae2a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-30.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-30.html */ +.red { background-color : red } +p:nth-of-type(3) { background-color : lime } +dl > :nth-of-type(3n+1) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-31.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-31.0.scss new file mode 100644 index 0000000000..de45ba5eb1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-31.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-31.html */ +.red { background-color : red } +p:nth-last-of-type(3) { background-color : lime } +dl > :nth-last-of-type(3n+1) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-32.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-32.0.scss new file mode 100644 index 0000000000..5fbf5c2b5e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-32.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-32.html */ +.red { background-color : red } +.t1 td:first-child { background-color : lime } +p > *:first-child { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-33.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-33.0.scss new file mode 100644 index 0000000000..507ac1b3cb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-33.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-33.html */ +.red { background-color : red } +.t1 td:last-child { background-color : lime } +p > *:last-child { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-34.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-34.0.scss new file mode 100644 index 0000000000..697d635940 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-34.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-34.html */ +.red { background-color : red } +address { margin-bottom : 1em ; margin-left : 1em } +address:first-of-type { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-35.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-35.0.scss new file mode 100644 index 0000000000..0fee4326d0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-35.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-35.html */ +.red { background-color : red } +address { margin-bottom : 1em ; margin-left : 1em } +address:last-of-type { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-36.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-36.0.scss new file mode 100644 index 0000000000..5190600df7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-36.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-36.html */ +.red { background-color : red } +p:only-child { background-color : lime } +div.testText > div > p { margin-left : 1em } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-37.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-37.0.scss new file mode 100644 index 0000000000..37d2a23b4c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-37.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-37.html */ +.red { background-color : red } +.t1 :only-of-type { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-38.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-38.0.scss new file mode 100644 index 0000000000..9a039639b1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-38.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-38.html */ +p:first-line { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39.0.scss new file mode 100644 index 0000000000..5243f7505a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-39.html */ +p:first-letter { font-size : xx-large ; background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39a.0.scss new file mode 100644 index 0000000000..af6c66bd8a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39a.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-39a.html */ +p:first-letter { color: lime; font-size: xx-large; } +p:before { color: red; content: 'T'; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39b.0.scss new file mode 100644 index 0000000000..38ff4ba000 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-39b.html */ +p::first-letter { font-size : xx-large ; background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39c.0.scss new file mode 100644 index 0000000000..f49d085ddb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39c.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-39c.html */ +p::first-letter { color: lime; font-size: xx-large; } + p::before { color: red; content: 'T'; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-3a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-3a.0.scss new file mode 100644 index 0000000000..a53bb65f46 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-3a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-3a.html */ +* { color : lime } +ul, p { color : red } +*.t1 { color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-4.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-4.0.scss new file mode 100644 index 0000000000..232286f470 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-4.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-4.html */ +#foo { background-color : lime } +p { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-41.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-41.0.scss new file mode 100644 index 0000000000..12049ebc09 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-41.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-41.html */ +p::before { background-color : lime ; content : "GENERATED CONTENT "} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-41a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-41a.0.scss new file mode 100644 index 0000000000..9092fb307f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-41a.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-41a.html */ +p:before { background-color : lime ; content : "GENERATED CONTENT "} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-42.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-42.0.scss new file mode 100644 index 0000000000..2c7b3c5930 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-42.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-42.html */ +p::after { background-color : lime ; content : "GENERATED CONTENT "} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-42a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-42a.0.scss new file mode 100644 index 0000000000..319f9620b6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-42a.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-42a.html */ +p:after { background-color : lime ; content : "GENERATED CONTENT "} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-43.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-43.0.scss new file mode 100644 index 0000000000..6bac1431f1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-43.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-43.html */ +.white { background-color: transparent ! important; } +.red { background-color: red; } +div.t1 p { background-color: lime; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-43b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-43b.0.scss new file mode 100644 index 0000000000..57d2e390f0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-43b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-43b.html */ +.white { background-color: transparent ! important; } +.green { background-color: lime; } +div.t1 p { background-color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44.0.scss new file mode 100644 index 0000000000..909bbca20e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-44.html */ +.white { background-color: transparent ! important; } +.red { background-color: red; } +div > p.test { background-color: lime; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44b.0.scss new file mode 100644 index 0000000000..b26c14087f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-44b.html */ +.white { background-color: transparent ! important; } +.green { background-color: lime; } +div > p.test { background-color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44c.0.scss new file mode 100644 index 0000000000..9279385479 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-44c.html */ + + .fail > div { background: red; color: yellow; } + .control { background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44d.0.scss new file mode 100644 index 0000000000..a8ed5ed793 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44d.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-44d.html */ + + #fail > div { background: red; } + p { background: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45.0.scss new file mode 100644 index 0000000000..3de4e06318 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-45.html */ +.red { background-color : red } +div.stub > p + p { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45b.0.scss new file mode 100644 index 0000000000..02ddbde845 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-45b.html */ +.green { background-color: lime; } +.white { background-color: transparent ! important; } +div.stub > p + p { background-color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45c.0.scss new file mode 100644 index 0000000000..6ed552f04e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-45c.html */ + + .fail + div { background: red; } + .control { background: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-46.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-46.0.scss new file mode 100644 index 0000000000..be3866cefe --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-46.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-46.html */ +.red { background-color : red } +div.stub > p ~ p { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-46b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-46b.0.scss new file mode 100644 index 0000000000..4de9c09290 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-46b.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-46b.html */ +.green { background-color : lime ! important } +div.stub > p ~ p { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-5.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-5.0.scss new file mode 100644 index 0000000000..acf0689798 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-5.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-5.html */ +p { background-color : red } +p[title] { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-54.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-54.0.scss new file mode 100644 index 0000000000..4be84ca7f0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-54.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-54.html */ +div.stub > * { color : red } +div.stub *:not([title^="si on"]) { color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-55.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-55.0.scss new file mode 100644 index 0000000000..eb3a0e6341 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-55.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-55.html */ +div.stub > * { color : red } +div.stub *:not([title$="tait"]) { color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-56.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-56.0.scss new file mode 100644 index 0000000000..e9a01bdad8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-56.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-56.html */ +div.stub > * { color : red } +div.stub *:not([title*=" on"]) { color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-59.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-59.0.scss new file mode 100644 index 0000000000..8c8d5d061c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-59.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-59.html */ +div.stub > * { color : red } +div.stub *:not(.foo) { color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-6.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-6.0.scss new file mode 100644 index 0000000000..514e4c3a8c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-6.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-6.html */ +address { background-color : red } +address[title="foo"] { background-color : lime } +span[title="a"] { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-60.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-60.0.scss new file mode 100644 index 0000000000..726b9f378b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-60.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-60.html */ +div.stub > * { color : red } +div.stub *:not(#foo) { color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-61.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-61.0.scss new file mode 100644 index 0000000000..2b346351b6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-61.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-61.html */ +div.stub > * { background-color : red } +div.stub *:not(:link) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-62.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-62.0.scss new file mode 100644 index 0000000000..4181d2eec7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-62.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-62.html */ +div.stub > * { background-color : red } +div.stub *:not(:visited) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-63.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-63.0.scss new file mode 100644 index 0000000000..24d4e99c5d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-63.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-63.html */ +div.stub * { color: lime; text-decoration: none; } +div.stub > * > *:not(:hover) { color: black } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-64.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-64.0.scss new file mode 100644 index 0000000000..480b30d221 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-64.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-64.html */ +div.stub * { color : lime } +div.stub > * > *:not(:active) { color : black } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-65.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-65.0.scss new file mode 100644 index 0000000000..30615dc8ef --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-65.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-65.html */ +a:not(:focus) { background-color: transparent; } +a { background-color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-66.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-66.0.scss new file mode 100644 index 0000000000..6532029b34 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-66.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-66.html */ +p { background-color: navy; color: white; } +p:not(:target) { background-color: white; color: black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-66b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-66b.0.scss new file mode 100644 index 0000000000..6323784598 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-66b.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-66b.html */ +p { background-color: red; } +p:not(:target) { background-color: lime; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-67.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-67.0.scss new file mode 100644 index 0000000000..4e177b1149 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-67.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-67.html */ +div.stub * { background-color : red } +div.stub *:not(:lang(fr)) { background-color : green } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-68.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-68.0.scss new file mode 100644 index 0000000000..b6f16cb7a8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-68.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-68.html */ +button { background-color : red } +input { background-color : red } +button:not(:enabled) { background-color : lime } +input:not(:enabled) { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-69.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-69.0.scss new file mode 100644 index 0000000000..9f407b8406 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-69.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-69.html */ +button { background-color : red } +input { background-color : red } +button:not(:disabled) { background-color : lime } +input:not(:disabled) { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-7.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-7.0.scss new file mode 100644 index 0000000000..8f1a711e3e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-7.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-7.html */ +p { background-color : red } +p[class~="b"] { background-color : lime } +address { background-color : red } +address[title~="foo"] { background-color : lime } +span[class~="b"] { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-70.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-70.0.scss new file mode 100644 index 0000000000..23ec933cc2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-70.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-70.html */ +input, span { background-color : red } +input:not(:checked), input:not(:checked) + span { background-color : lime} diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-72.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-72.0.scss new file mode 100644 index 0000000000..ee7aae040e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-72.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-72.html */ +p:not(:root) { background-color: lime; } +div * { background-color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-72b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-72b.0.scss new file mode 100644 index 0000000000..2e52ad5595 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-72b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-72b.html */ +html:not(:root), test:not(:root) { background-color: red; } +p { background-color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-77.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-77.0.scss new file mode 100644 index 0000000000..43036386f6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-77.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-77.html */ +.red { background-color : red } +.t1 td:not(:first-child) { background-color : lime } +p > *:not(:first-child) { background-color : lime } +table.t1 td { border : thin black solid } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-77b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-77b.0.scss new file mode 100644 index 0000000000..fd95f40ed5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-77b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-77b.html */ +.green { background-color : lime ! important } +.t1 td:not(:first-child) { background-color : red } +p > *:not(:first-child) { background-color : red } +table.t1 td { border : thin black solid } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-78.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-78.0.scss new file mode 100644 index 0000000000..4d99f1ceca --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-78.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-78.html */ +.red { background-color : red } +.t1 td:not(:last-child) { background-color : lime } +p > *:not(:last-child) { background-color : lime } +table.t1 td { border : thin black solid } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-78b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-78b.0.scss new file mode 100644 index 0000000000..8e3c173b9c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-78b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-78b.html */ +.green { background-color : lime ! important } +.t1 td:not(:last-child) { background-color : red } +p > *:not(:last-child) { background-color : red } +table.t1 td { border : thin black solid } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-79.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-79.0.scss new file mode 100644 index 0000000000..1d1ff21830 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-79.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-79.html */ +.red { background-color : red } +address { margin-bottom : 1em ; margin-left : 1em } +address:not(:first-of-type) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-7b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-7b.0.scss new file mode 100644 index 0000000000..8043e647d2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-7b.0.scss @@ -0,0 +1,9 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-7b.html */ + +p { background: lime; } +[title~="hello world"] { background: red; } +/* Section 6.3.1: Represents the att attribute whose value is a +space-separated list of words, one of which is exactly "val". If this +selector is used, the words in the value must not contain spaces +(since they are separated by spaces). */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-8.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-8.0.scss new file mode 100644 index 0000000000..8afa5ca99d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-8.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-8.html */ +p { background-color : red } +p[lang|="en"] { background-color : lime } +address { background-color : red } +address[lang="fi"] { background-color : lime } +span[lang|="fr"] { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-80.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-80.0.scss new file mode 100644 index 0000000000..697846a18f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-80.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-80.html */ +.red { background-color : red } +address { margin-bottom : 1em ; margin-left : 1em } +address:not(:last-of-type) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-81.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-81.0.scss new file mode 100644 index 0000000000..7b6f700901 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-81.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-81.html */ +.red { background-color : red } +p:not(:only-child) { background-color : lime } +div.testText > div > p { margin-left : 1em } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-81b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-81b.0.scss new file mode 100644 index 0000000000..af6a6cb054 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-81b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-81b.html */ +.green { background-color : lime ! important } +p:not(:only-child) { background-color : lime } +div.testText > div > p { margin-left : 1em } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-82.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-82.0.scss new file mode 100644 index 0000000000..5869d3161a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-82.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-82.html */ +.red { background-color : red } +.t1 *:not(:only-of-type) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-82b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-82b.0.scss new file mode 100644 index 0000000000..c9e4c2cc94 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-82b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-82b.html */ +.green { background-color : lime ! important } +.t1 *:not(:only-of-type) { background-color : red } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-86.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-86.0.scss new file mode 100644 index 0000000000..7022b8c830 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-86.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-86.html */ +p { color: red; } +blockquote > div p { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-87.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-87.0.scss new file mode 100644 index 0000000000..275d4274ca --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-87.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-87.html */ +p { color: red; } +blockquote + div ~ p { color: green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-87b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-87b.0.scss new file mode 100644 index 0000000000..1776b027f7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-87b.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-87b.html */ +p { color: green ! important; } +blockquote + div ~ p { color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-88.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-88.0.scss new file mode 100644 index 0000000000..57814ed7c0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-88.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-88.html */ +p { color: red; } +blockquote + div p { color: green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-88b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-88b.0.scss new file mode 100644 index 0000000000..2d0e34e3c8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-88b.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-88b.html */ +p { color: green ! important; } +blockquote + div p { color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-89.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-89.0.scss new file mode 100644 index 0000000000..d6c797e143 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-89.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-89.html */ +p { color: red; } +blockquote div > p { color: green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-9.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-9.0.scss new file mode 100644 index 0000000000..cba3eded20 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-9.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-9.html */ +p { background-color : red } +p[title^="foo"] { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-90.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-90.0.scss new file mode 100644 index 0000000000..32175261e4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-90.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-90.html */ +p { color: red; } +blockquote ~ div + p { color: green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-90b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-90b.0.scss new file mode 100644 index 0000000000..afcdbafe4d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-90b.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-90b.html */ +p { color: green ! important; } +blockquote ~ div + p { color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d1.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d1.0.scss new file mode 100644 index 0000000000..b669874e11 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d1.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-d1.html */ + + #test { background: red; display: block; padding: 1em; } + #test:not(:empty) { background: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d1b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d1b.0.scss new file mode 100644 index 0000000000..0ac92bcd18 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d1b.0.scss @@ -0,0 +1,7 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-d1b.html */ + + #test1 { background: red; display: block; padding: 1em; margin: 1em; } + #test1:empty { background: lime; } + #test2 { background: lime; display: block; padding: 1em; margin: 1em; } + #test2:empty { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d2.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d2.0.scss new file mode 100644 index 0000000000..c3f0544bb5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d2.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-d2.html */ + + #test { background: red; display: block; padding: 1em; } + #stub ~ div div + div > div { background: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d4.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d4.0.scss new file mode 100644 index 0000000000..dbf2bdda74 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d4.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-d4.html */ + + #two:first-child { background: red; } + #three:last-child { background: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-001.0.scss new file mode 100644 index 0000000000..7e94325735 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-001.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-001.0.scss new file mode 100644 index 0000000000..3e68199d28 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-dynamic-001.htm */ + + span:before { content: open-quote; } + span:after { content: close-quote; } + span { quotes: '"' '"'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-003a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-003a.0.scss new file mode 100644 index 0000000000..30c5445777 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-003a.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-dynamic-003a.htm */ + + div#x:first-letter { color: blue; float: left; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-003b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-003b.0.scss new file mode 100644 index 0000000000..37e3dee7fd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-003b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-dynamic-003b.htm */ + + div#x:first-letter { color: blue; float: none } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-inherit-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-inherit-001.0.scss new file mode 100644 index 0000000000..4aea22c740 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-inherit-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-inherit-001.htm */ + +div { float: left; overflow: scroll; font-size: 50px; width: 3em; line-height: 10px } +div:first-letter { float: inherit; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-inherit-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-inherit-001.1.scss new file mode 100644 index 0000000000..9bc48c3a71 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-inherit-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-inherit-001.htm */ +.style { font-size: 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-001.0.scss new file mode 100644 index 0000000000..7d79ae49d8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-001.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-002.0.scss new file mode 100644 index 0000000000..8ab9328de6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-002.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-003.0.scss new file mode 100644 index 0000000000..2c2b8a906f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-003.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-004.0.scss new file mode 100644 index 0000000000..b568b4430b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-004.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-004.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-005.0.scss new file mode 100644 index 0000000000..d5f9376161 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-005.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-005.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-006.0.scss new file mode 100644 index 0000000000..fc0089ccde --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-006.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-006.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-007.0.scss new file mode 100644 index 0000000000..5fbf16bc9d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-007.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-007.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-001.0.scss new file mode 100644 index 0000000000..ba956560c8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-quote-001.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-002.0.scss new file mode 100644 index 0000000000..a5f95536b7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-002.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-quote-002.htm */ + + div { color: black; } + div:first-letter { color: green; } + span:before { content: open-quote; } + span:after { content: close-quote; } + span { quotes: '"' '"'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-003.0.scss new file mode 100644 index 0000000000..849c55abf5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-003.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-quote-003.htm */ + + div { color: black; } + div:first-letter { color: green; } + span:before { content: open-quote "This "; } + span:after { content: close-quote; } + span { quotes: '"' '"'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-004.0.scss new file mode 100644 index 0000000000..96706e1f1e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-004.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-quote-004.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-005.0.scss new file mode 100644 index 0000000000..15214106ba --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-005.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-quote-005.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-006.0.scss new file mode 100644 index 0000000000..970e5b70b0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-006.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-quote-006.htm */ + + div { color: black; } + div:first-letter { color: green; } + span:before { content: "\"This "; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-001.0.scss new file mode 100644 index 0000000000..74973ac9a1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-001.htm */ + + body { color: red } + body:first-line { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-001.0.scss new file mode 100644 index 0000000000..5cec148572 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-001.htm */ + + div { color: green } + div:first-line { color: red } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-001.1.scss new file mode 100644 index 0000000000..59ddfc8476 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-001.htm */ +.style { float: left } diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-002.0.scss new file mode 100644 index 0000000000..89f8cbdeda --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-002.htm */ + + div { color: red } + div:first-line { color: green } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-002.1.scss new file mode 100644 index 0000000000..716528bfc2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-002.htm */ +.style { float: left } diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-003.0.scss new file mode 100644 index 0000000000..8b793f90aa --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-003.htm */ + + div { color: green } + div:first-line { color: red } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-003.1.scss new file mode 100644 index 0000000000..1da72d9761 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-003.htm */ +.style { float: left } diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-004.0.scss new file mode 100644 index 0000000000..cade4a2861 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-004.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-004.htm */ + + div { color: green } + div:first-line { color: red } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-001.0.scss new file mode 100644 index 0000000000..c5e5fe5468 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-001.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-inherit-001.htm */ + + +.a:first-line { } +.a { overflow: scroll; } +.b, .c { overflow: inherit; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-002.0.scss new file mode 100644 index 0000000000..ea1027fc24 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-002.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-inherit-002.htm */ + + div { background: green; } + div:first-line { background-color: red; } + span.one { background: inherit; } + span.two { background-color: inherit; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-003.0.scss new file mode 100644 index 0000000000..f498981952 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-003.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-inherit-003.htm */ + + div, p { background: green; } + div:first-line, p:first-line { background-color: red; } + span.one { background: inherit; } + span.two { background-color: inherit; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.0.scss new file mode 100644 index 0000000000..9358f2916e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001a.htm */ + +.left { float:left; } +.right { float:right; } +.left, .right { width:50px; height:50px; background:yellow; } +p { overflow:auto; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.1.scss new file mode 100644 index 0000000000..d803b8ffd2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001a.htm */ +.style { width:400px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.2.scss new file mode 100644 index 0000000000..0a22209fb1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001a.htm */ +.style { text-align:right; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.0.scss new file mode 100644 index 0000000000..80fe2ff996 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001b.htm */ + +.left { float:left; } +.right { float:right; } +.left, .right { width:50px; height:50px; background:yellow; } +p { overflow:auto; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.1.scss new file mode 100644 index 0000000000..3992160e83 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001b.htm */ +.style { width:400px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.2.scss new file mode 100644 index 0000000000..f19a8d2088 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001b.htm */ +.style { text-align:right; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.0.scss new file mode 100644 index 0000000000..19d1d26dc5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001c.htm */ + +.left { float:left; } +.right { float:right; } +.left, .right { width:50px; height:50px; background:yellow; } +p { overflow:auto; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.1.scss new file mode 100644 index 0000000000..c3143dca78 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001c.htm */ +.style { width:400px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.2.scss new file mode 100644 index 0000000000..e52a60f4ed --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001c.htm */ +.style { text-align:right; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.0.scss new file mode 100644 index 0000000000..4141a2ba00 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-003.htm */ +.style { width:100px; font-size:5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.1.scss new file mode 100644 index 0000000000..aecdad0621 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-003.htm */ +.style { background:blue; width:100px; height:100px; float:left; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.2.scss new file mode 100644 index 0000000000..2e7fc3e31e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-003.htm */ +.style { background:yellow; width:30px; height:30px; float:left; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.3.scss new file mode 100644 index 0000000000..bacc9de7c9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-003.htm */ +.style { background:yellow; width:30px; height:30px; float:right; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.0.scss new file mode 100644 index 0000000000..a1f23b9119 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-004.htm */ +.style { width:200px; font-size:5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.1.scss new file mode 100644 index 0000000000..be86a0b01e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-004.htm */ +.style { background:green; width:100px; height:100px; float:left; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.2.scss new file mode 100644 index 0000000000..b9c4341835 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-004.htm */ +.style { background:blue; width:100px; height:100px; float:left; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.0.scss new file mode 100644 index 0000000000..1f12c6fb78 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-001.htm */ +.style { float: left; width: 500px; height: 500px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.1.scss new file mode 100644 index 0000000000..155ae9bb17 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-001.htm */ +.style { float: right; width: 50px; height: 300px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.2.scss new file mode 100644 index 0000000000..03921ad64e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-001.htm */ +.style { margin-right: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.3.scss new file mode 100644 index 0000000000..82327074bf --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-001.htm */ +.style { float: left; width: 425px; height: 10px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.0.scss new file mode 100644 index 0000000000..b0659ed170 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-002.htm */ +.style { float: left; width: 500px; height: 500px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.1.scss new file mode 100644 index 0000000000..51d4aae421 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-002.htm */ +.style { float: right; width: 50px; height: 300px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.2.scss new file mode 100644 index 0000000000..b64d557e23 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-002.htm */ +.style { margin-right: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.3.scss new file mode 100644 index 0000000000..667087faba --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-002.htm */ +.style { float: left; width: 475px; height: 10px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.0.scss new file mode 100644 index 0000000000..bb6604d005 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-001.htm */ +.style { float: left; width: 500px; height: 500px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.1.scss new file mode 100644 index 0000000000..7ee24227e9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-001.htm */ +.style { float: left; width: 50px; height: 300px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.2.scss new file mode 100644 index 0000000000..1d11bdf6dc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-001.htm */ +.style { margin-left: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.3.scss new file mode 100644 index 0000000000..2ce67f6358 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-001.htm */ +.style { float: right; width: 425px; height: 10px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.0.scss new file mode 100644 index 0000000000..02936f2d05 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-002.htm */ +.style { float: left; width: 500px; height: 500px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.1.scss new file mode 100644 index 0000000000..62e70dc857 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-002.htm */ +.style { float: left; width: 50px; height: 300px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.2.scss new file mode 100644 index 0000000000..33158539ba --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-002.htm */ +.style { margin-left: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.3.scss new file mode 100644 index 0000000000..b657772275 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-002.htm */ +.style { float: right; width: 475px; height: 10px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.0.scss new file mode 100644 index 0000000000..a0b07a7d20 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-left-001.htm */ +.style { float: left; width: 500px; height: 500px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.1.scss new file mode 100644 index 0000000000..282d40f7de --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-left-001.htm */ +.style { float: left; width: 50px; height: 300px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.2.scss new file mode 100644 index 0000000000..ab40480544 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-left-001.htm */ +.style { margin-left: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.3.scss new file mode 100644 index 0000000000..3d1bced7d2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-left-001.htm */ +.style { float: left; width: 425px; height: 10px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.0.scss new file mode 100644 index 0000000000..808f90847a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-right-001.htm */ +.style { float: left; width: 500px; height: 500px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.1.scss new file mode 100644 index 0000000000..2591c3de52 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-right-001.htm */ +.style { float: right; width: 50px; height: 300px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.2.scss new file mode 100644 index 0000000000..2ca9103b55 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-right-001.htm */ +.style { margin-right: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.3.scss new file mode 100644 index 0000000000..a051758341 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-right-001.htm */ +.style { float: right; width: 425px; height: 10px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.0.scss new file mode 100644 index 0000000000..55dbbeebaa --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ + + + table { margin: 0; border-spacing: 0; } + td, th { padding: 0; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.1.scss new file mode 100644 index 0000000000..59d553acc3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { background: aqua } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.12.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.12.scss new file mode 100644 index 0000000000..941f9b0c43 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.12.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { float:right; background:blue; width: 100px; height: 20px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.2.scss new file mode 100644 index 0000000000..231f1d76cf --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { float:left; background:blue; width: 100px; height: 20px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.24.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.24.scss new file mode 100644 index 0000000000..5304225969 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.24.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { overflow: hidden; background: yellow } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.3.scss new file mode 100644 index 0000000000..0ffa20c60c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { float:left; background:silver; width: 100px; height: 6px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.4.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.4.scss new file mode 100644 index 0000000000..3af0c41084 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { background: yellow } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.5.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.5.scss new file mode 100644 index 0000000000..70e5ab27a3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { width: 150px; height: 10px; background: purple } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.8.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.8.scss new file mode 100644 index 0000000000..4f0231e636 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.8.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { float:right; background:silver; width: 100px; height: 6px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.0.scss new file mode 100644 index 0000000000..87b04d41d4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.0.scss @@ -0,0 +1,9 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-005.htm */ + + + body { font-size: 10px; } + + table { margin: 0; border-spacing: 0; } + td, th { padding: 0; vertical-align: top; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.1.scss new file mode 100644 index 0000000000..4ed6811ec4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-005.htm */ +.style { background: aqua } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.2.scss new file mode 100644 index 0000000000..04ba12051e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-005.htm */ +.style { float:left; background:blue; width: 200px; height: 20px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.3.scss new file mode 100644 index 0000000000..59ff5a258e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-005.htm */ +.style { background: yellow } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.5.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.5.scss new file mode 100644 index 0000000000..1f9328855c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-005.htm */ +.style { float:right; background:blue; width: 200px; height: 20px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.9.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.9.scss new file mode 100644 index 0000000000..53a68a0469 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.9.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-005.htm */ +.style { overflow:hidden; background: yellow; width: 50%; height: 20px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.0.scss new file mode 100644 index 0000000000..ca6d5ed844 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.0.scss @@ -0,0 +1,12 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ + + + body { font-size: 16px; } + + table { margin: 0; border-spacing: 0; } + caption, td, th { padding: 0; vertical-align: top; text-align: left; } + + table table caption { background: yellow; } + table table { background: purple; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.1.scss new file mode 100644 index 0000000000..beba9cf330 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { background: aqua } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.10.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.10.scss new file mode 100644 index 0000000000..49c74a97d9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.10.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:110px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.11.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.11.scss new file mode 100644 index 0000000000..deee635381 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.11.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:105px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.12.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.12.scss new file mode 100644 index 0000000000..fdb260729a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.12.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:100px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.13.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.13.scss new file mode 100644 index 0000000000..4522f57cb8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.13.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:95px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.131.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.131.scss new file mode 100644 index 0000000000..a274d6ee7f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.131.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { caption-side: bottom; height:30px; width: 192px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.14.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.14.scss new file mode 100644 index 0000000000..b49fd302a9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.14.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:90px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.15.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.15.scss new file mode 100644 index 0000000000..2a29f56c3f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.15.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:85px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.16.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.16.scss new file mode 100644 index 0000000000..e8f11cc823 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.16.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:80px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.17.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.17.scss new file mode 100644 index 0000000000..231f28519c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.17.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:75px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.18.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.18.scss new file mode 100644 index 0000000000..a4f78671cb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.18.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:70px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.19.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.19.scss new file mode 100644 index 0000000000..9e9e29d19c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.19.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:65px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.2.scss new file mode 100644 index 0000000000..501590ad5d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:150px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.20.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.20.scss new file mode 100644 index 0000000000..126280a6fe --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.20.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:60px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.21.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.21.scss new file mode 100644 index 0000000000..a7228173da --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.21.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:55px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.22.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.22.scss new file mode 100644 index 0000000000..0cc681c041 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.22.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:50px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.23.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.23.scss new file mode 100644 index 0000000000..f2c07e7838 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.23.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:45px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.24.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.24.scss new file mode 100644 index 0000000000..b8e2c5796e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.24.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:40px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.25.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.25.scss new file mode 100644 index 0000000000..ce05ee6888 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.25.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:35px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.26.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.26.scss new file mode 100644 index 0000000000..d5ab773c5f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.26.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:30px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.27.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.27.scss new file mode 100644 index 0000000000..3385f4ea30 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.27.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:25px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.28.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.28.scss new file mode 100644 index 0000000000..6022a36c29 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.28.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:20px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.29.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.29.scss new file mode 100644 index 0000000000..a352e1fa56 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.29.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:15px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.3.scss new file mode 100644 index 0000000000..29eb47aa2f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:145px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.30.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.30.scss new file mode 100644 index 0000000000..5bacfae2f3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.30.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:10px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.31.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.31.scss new file mode 100644 index 0000000000..0a8445e2b0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.31.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:5px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.32.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.32.scss new file mode 100644 index 0000000000..ba50d0bd65 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.32.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { caption-side: top; height:30px; width: 100px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.33.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.33.scss new file mode 100644 index 0000000000..2dc59a3264 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.33.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { height: 30px; width: 230px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.4.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.4.scss new file mode 100644 index 0000000000..97ec1f9113 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:140px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.5.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.5.scss new file mode 100644 index 0000000000..0778fc55c9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:135px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.6.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.6.scss new file mode 100644 index 0000000000..eee0117225 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.6.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:130px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.65.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.65.scss new file mode 100644 index 0000000000..7c9e6eda76 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.65.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { caption-side: top; height:30px; width: 190px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.66.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.66.scss new file mode 100644 index 0000000000..bb41e0cbaf --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.66.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { height: 30px; width: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.7.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.7.scss new file mode 100644 index 0000000000..764745abb1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.7.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:125px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.8.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.8.scss new file mode 100644 index 0000000000..ae65d3d2e4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.8.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:120px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.9.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.9.scss new file mode 100644 index 0000000000..c86cc30a7c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.9.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:115px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.98.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.98.scss new file mode 100644 index 0000000000..9cd7749821 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.98.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { caption-side: bottom; height:30px; width: 100px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.99.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.99.scss new file mode 100644 index 0000000000..eabd2b81b7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.99.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { height: 30px; width: 227px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.0.scss new file mode 100644 index 0000000000..fe79ead93b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ + + + table { margin: 0; border-spacing: 0; } + td, th { padding: 0; vertical-align: top; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.1.scss new file mode 100644 index 0000000000..da32416752 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { background: aqua } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.15.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.15.scss new file mode 100644 index 0000000000..dc37b6963d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.15.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: 5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.16.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.16.scss new file mode 100644 index 0000000000..c2fed6240b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.16.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.19.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.19.scss new file mode 100644 index 0000000000..a656c57cf1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.19.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: 10px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.2.scss new file mode 100644 index 0000000000..bcd2f016b0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { float: left; height: 10px; width: 150px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.20.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.20.scss new file mode 100644 index 0000000000..64956d2143 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.20.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: -5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.23.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.23.scss new file mode 100644 index 0000000000..9796be893b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.23.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: -5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.24.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.24.scss new file mode 100644 index 0000000000..7842444780 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.24.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 10px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.27.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.27.scss new file mode 100644 index 0000000000..d2e20e04cc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.27.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: 4px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.28.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.28.scss new file mode 100644 index 0000000000..74db9f2d40 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.28.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 4px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.3.scss new file mode 100644 index 0000000000..b50e1429ae --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: 6px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.31.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.31.scss new file mode 100644 index 0000000000..f09ed11cee --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.31.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: -1px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.39.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.39.scss new file mode 100644 index 0000000000..8dcb8d161c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.39.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: -4px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.4.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.4.scss new file mode 100644 index 0000000000..3a4a85219f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.40.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.40.scss new file mode 100644 index 0000000000..bfdf7db3b4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.40.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 0px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.43.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.43.scss new file mode 100644 index 0000000000..6f0581a068 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.43.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: 0px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.44.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.44.scss new file mode 100644 index 0000000000..186f24937b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.44.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: -4px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.48.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.48.scss new file mode 100644 index 0000000000..489890f8bd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.48.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: -1px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.7.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.7.scss new file mode 100644 index 0000000000..0ee68c91ce --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.7.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.8.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.8.scss new file mode 100644 index 0000000000..5c131b1a4d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.8.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 6px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-outside-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-outside-001.0.scss new file mode 100644 index 0000000000..c7fdc4f3ba --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-outside-001.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-outside-001.htm */ + +#wrap {width:600px; border:1px solid;} +.a {background:lime; color:#fff; width:80%;} +.b {float:right; width:18%; background: cyan; color: #000; height:10em;} +textarea {width: 100%; height:10em;} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.0.scss new file mode 100644 index 0000000000..f780444dc2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-001l.htm */ + + +body { width: 400px; border: medium solid; } +div { float: left; clear: left; } +span { display: block; overflow: hidden; width: 200px; height: 50px; background: aqua; margin-right: auto; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.1.scss new file mode 100644 index 0000000000..a695061dc6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-001l.htm */ +.style { width: 50px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.2.scss new file mode 100644 index 0000000000..94b3728f3d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-001l.htm */ +.style { width: 100px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.0.scss new file mode 100644 index 0000000000..c665929221 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-001r.htm */ + + +body { width: 400px; border: medium solid; } +div { float: right; clear: right; } +span { display: block; overflow: hidden; width: 200px; height: 50px; background: aqua; margin-left: auto; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.1.scss new file mode 100644 index 0000000000..2775ef585f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-001r.htm */ +.style { width: 50px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.2.scss new file mode 100644 index 0000000000..3c9ab6d376 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-001r.htm */ +.style { width: 100px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.0.scss new file mode 100644 index 0000000000..48cf6ec53a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-002l.htm */ + + +body { width: 400px; border: medium solid; } +span { display: block; overflow: hidden; width: 200px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.1.scss new file mode 100644 index 0000000000..10ffd0fc80 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-002l.htm */ +.style { float: left; width: 150px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.2.scss new file mode 100644 index 0000000000..3a572e8b03 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-002l.htm */ +.style { float: right; width: 300px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.0.scss new file mode 100644 index 0000000000..fe457370c1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-002r.htm */ + + +body { width: 400px; border: medium solid; } +span { display: block; overflow: hidden; width: 200px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.1.scss new file mode 100644 index 0000000000..4e2081dba9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-002r.htm */ +.style { float: right; width: 150px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.2.scss new file mode 100644 index 0000000000..1055fac5ff --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-002r.htm */ +.style { float: left; width: 300px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.0.scss new file mode 100644 index 0000000000..ef1a96a2bf --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-003l.htm */ + + +body { width: 400px; border: medium solid; } +span { display: block; overflow: hidden; width: 100px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.1.scss new file mode 100644 index 0000000000..1c57064ba3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-003l.htm */ +.style { float: left; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.2.scss new file mode 100644 index 0000000000..2e90f18734 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-003l.htm */ +.style { float: right; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.0.scss new file mode 100644 index 0000000000..d2971cb795 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-003r.htm */ + + +body { width: 400px; border: medium solid; } +span { display: block; overflow: hidden; width: 100px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.1.scss new file mode 100644 index 0000000000..f6306c31aa --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-003r.htm */ +.style { float: right; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.2.scss new file mode 100644 index 0000000000..3b63ad756d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-003r.htm */ +.style { float: left; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.0.scss new file mode 100644 index 0000000000..6119b6895a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-001l.htm */ + + +body { width: 400px; border: medium solid; text-align: left; } +div { float: left; clear: left; } +span { display: inline-block; vertical-align: top; width: 200px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.1.scss new file mode 100644 index 0000000000..60abfaa89f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-001l.htm */ +.style { width: 50px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.2.scss new file mode 100644 index 0000000000..bb8f7d8585 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-001l.htm */ +.style { width: 100px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.0.scss new file mode 100644 index 0000000000..3c674d4165 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-001r.htm */ + + +body { width: 400px; border: medium solid; text-align: right; } +div { float: right; clear: right; } +span { display: inline-block; vertical-align: top; width: 200px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.1.scss new file mode 100644 index 0000000000..254cceff5d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-001r.htm */ +.style { width: 50px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.2.scss new file mode 100644 index 0000000000..f9da61827d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-001r.htm */ +.style { width: 100px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.0.scss new file mode 100644 index 0000000000..d391fc5bb6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-002l.htm */ + + +body { width: 400px; border: medium solid; } +span { display: inline-block; vertical-align: top; width: 200px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.1.scss new file mode 100644 index 0000000000..b8b4e306b2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-002l.htm */ +.style { float: left; width: 150px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.2.scss new file mode 100644 index 0000000000..4fe3554d42 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-002l.htm */ +.style { float: right; width: 300px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.0.scss new file mode 100644 index 0000000000..278a0b20d1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-002r.htm */ + + +body { width: 400px; border: medium solid; } +span { display: inline-block; vertical-align: top; width: 200px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.1.scss new file mode 100644 index 0000000000..24fc0000cb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-002r.htm */ +.style { float: right; width: 150px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.2.scss new file mode 100644 index 0000000000..5aba32ba55 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-002r.htm */ +.style { float: left; width: 300px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.0.scss new file mode 100644 index 0000000000..5af166b155 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-003l.htm */ + + +body { width: 400px; border: medium solid; } +span { display: inline-block; vertical-align: top; width: 100px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.1.scss new file mode 100644 index 0000000000..ae6e0a84ea --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-003l.htm */ +.style { float: left; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.2.scss new file mode 100644 index 0000000000..f6a110f660 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-003l.htm */ +.style { float: right; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.0.scss new file mode 100644 index 0000000000..573684a70a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-003r.htm */ + + +body { width: 400px; border: medium solid; } +span { display: inline-block; vertical-align: top; width: 100px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.1.scss new file mode 100644 index 0000000000..ed8f4d939a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-003r.htm */ +.style { float: right; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.2.scss new file mode 100644 index 0000000000..3156752c2e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-003r.htm */ +.style { float: left; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.0.scss new file mode 100644 index 0000000000..4cb8f644c2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-001.htm */ +.style { width: 500px; height: 500px; float: left; font-size: 12px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.1.scss new file mode 100644 index 0000000000..c1ed4bbe00 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-001.htm */ +.style { float: left; width: 10px; height: 30px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.2.scss new file mode 100644 index 0000000000..b3891027db --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-001.htm */ +.style { float: left; clear: left; width: 100px; height: 1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.3.scss new file mode 100644 index 0000000000..92c36c2b4b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-001.htm */ +.style { display:inline-block; vertical-align: bottom; height: 20px; width: 300px; background: blue; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.4.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.4.scss new file mode 100644 index 0000000000..7a4a377d29 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-001.htm */ +.style { display:inline-block; vertical-align: bottom; height: 20px; width: 300px; background: purple; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.5.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.5.scss new file mode 100644 index 0000000000..30b08ae999 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-001.htm */ +.style { display:inline-block; vertical-align: bottom; height: 20px; width: 300px; background: fuchsia } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.0.scss new file mode 100644 index 0000000000..c718bdcd07 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-002.htm */ +.style { width: 500px; height: 500px; float: left; font-size: 12px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.1.scss new file mode 100644 index 0000000000..fa43435f50 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-002.htm */ +.style { float: left; width: 10px; height: 30px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.2.scss new file mode 100644 index 0000000000..302c91ab56 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-002.htm */ +.style { float: left; clear: left; width: 100px; height: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.3.scss new file mode 100644 index 0000000000..d90881ad6d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-002.htm */ +.style { display:inline-block; vertical-align: bottom; height: 20px; width: 300px; background: blue; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.4.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.4.scss new file mode 100644 index 0000000000..1f403a2ed2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-002.htm */ +.style { display:inline-block; vertical-align: bottom; height: 20px; width: 300px; background: purple; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.5.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.5.scss new file mode 100644 index 0000000000..901a27fe9d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-002.htm */ +.style { display:inline-block; vertical-align: bottom; height: 20px; width: 300px; background: fuchsia } diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-001.0.scss new file mode 100644 index 0000000000..f70698a920 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-001.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-001.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: CSSTest FamilyName, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-002.0.scss new file mode 100644 index 0000000000..f1cfd976b2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-002.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-002.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: csstest familyname, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-003.0.scss new file mode 100644 index 0000000000..55ae604a48 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-003.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-003.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: cssTest familyName, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-004.0.scss new file mode 100644 index 0000000000..b95f2e94bf --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-004.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-004.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: "CSSTest FamilyName", CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-005.0.scss new file mode 100644 index 0000000000..3a5f916cce --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-005.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-005.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: 'CSSTest FamilyName', CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-006.0.scss new file mode 100644 index 0000000000..312f9c8948 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-006.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-006.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: CSSTest FamilyName, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-007.0.scss new file mode 100644 index 0000000000..d6f61aa0da --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-007.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-007.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: "CSSTest FamilyName", CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-008.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-008.0.scss new file mode 100644 index 0000000000..b0f025d6f0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-008.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-008.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: 'CSSTest FamilyName', CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-009.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-009.0.scss new file mode 100644 index 0000000000..f6ed3eea3d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-009.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-009.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: CSSTest \000046amilyName, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-012.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-012.0.scss new file mode 100644 index 0000000000..ff9c919acd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-012.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-012.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: "CSSTest Family\Name", CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-013.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-013.0.scss new file mode 100644 index 0000000000..04100a1326 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-013.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-013.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: CSSTest FamilyName Bold, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-014.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-014.0.scss new file mode 100644 index 0000000000..d98252d89d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-014.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-014.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: CSSTestFamilyNameBold, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-016.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-016.0.scss new file mode 100644 index 0000000000..11566bc342 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-016.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-016.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: CSSTest Weights 400; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-017.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-017.0.scss new file mode 100644 index 0000000000..ea2b2110b0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-017.0.scss @@ -0,0 +1,9 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-017.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + body { font-family: CSSTest Fallback; } + p, div { + font-family: CSSTest Unknown; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-018.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-018.0.scss new file mode 100644 index 0000000000..81e90cee9c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-018.0.scss @@ -0,0 +1,9 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-018.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + body { font-family: CSSTest Fallback; } + p, div { + font-family: "CSSTest Unknown"; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-019.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-019.0.scss new file mode 100644 index 0000000000..ad32f6351b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-019.0.scss @@ -0,0 +1,9 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-019.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + div#test { font-family: CSSTest Fallback; } + p { + font-family: CSSTest Unknown; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-020.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-020.0.scss new file mode 100644 index 0000000000..0d66b81154 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-020.0.scss @@ -0,0 +1,9 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-020.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + div#test { font-family: CSSTest Fallback; } + p { + font-family: "CSSTest Unknown"; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-021.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-021.0.scss new file mode 100644 index 0000000000..592d994b47 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-021.0.scss @@ -0,0 +1,10 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-021.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + body { font-family: "CSSTest FamilyName"; } + div { font-family: "CSSTest Unknown"; } + p { + font-family: "CSSTest" Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-022.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-022.0.scss new file mode 100644 index 0000000000..dc737140a8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-022.0.scss @@ -0,0 +1,14 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-022.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + div { font-family: "CSSTest Unknown"; } + p { + } + p#test1 { + font-family: x-large CSSTest Fallback; + } + p#test4 { + font-family: caption CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-023.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-023.0.scss new file mode 100644 index 0000000000..4c4dc9c7f3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-023.0.scss @@ -0,0 +1,20 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-023.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + div.test { font-family: CSSTest Fallback; } + p { + } + p#test1a { + font-family: "small-caps 1in CSSTest FamilyName Funky", CSSTest Fallback; + } + p#test2 { + font-family: x-large CSSTest FamilyName Funky, CSSTest Fallback; + } + p#test2a { + font-family: "x-large CSSTest FamilyName Funky", CSSTest Fallback; + } + p#test3a { + font-family: "12px CSSTest FamilyName Funky", CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-024.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-024.0.scss new file mode 100644 index 0000000000..79ac477f2c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-024.0.scss @@ -0,0 +1,26 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-024.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + div.test { font-family: CSSTest Fallback; } + p { + } + p#test1 { + font-family: caption, CSSTest Fallback; + } + p#test2 { + font-family: icon, CSSTest Fallback; + } + p#test3 { + font-family: menu, CSSTest Fallback; + } + p#test4 { + font-family: message-box, CSSTest Fallback; + } + p#test5 { + font-family: small-caption, CSSTest Fallback; + } + p#test6 { + font-family: status-bar, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-weight-bolder-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-weight-bolder-001.0.scss new file mode 100644 index 0000000000..e1334dbe2f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-weight-bolder-001.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-weight-bolder-001.htm */ + + span#verify { font-family: CSSTest Verify; font-weight: normal; } + div { margin-bottom: 1em; } + body { margin: 50px; } + table { + border-collapse: collapse; + } + th { + font-weight: normal; + text-align: left; + padding-right: 1em; + } + span { font-weight: bolder; } + thead th { text-align: center; padding-bottom: 1em; } + td { width: 5em; text-align: center; } + td.f1 { font-family: CSSTest Weights Full; } + td.f2 { font-family: CSSTest Weights W1479; } + td.f3 { font-family: CSSTest Weights W15; } + td.f4 { font-family: CSSTest Weights W24; } + td.f5 { font-family: CSSTest Weights W2569; } + td.f6 { font-family: CSSTest Weights W258; } + td.f7 { font-family: CSSTest Weights W3589; } + td.f8 { font-family: CSSTest Weights W47; } + th.f1 { display: table-cell; } + th.f2 { display: table-cell; } + th.f3 { display: table-cell; } + th.f4 { display: table-cell; } + th.f5 { display: table-cell; } + th.f6 { display: table-cell; } + th.f7 { display: table-cell; } + th.f8 { display: table-cell; } + + tr.w1 td { font-weight: 100; } + tr.w2 td { font-weight: 200; } + tr.w3 td { font-weight: 300; } + tr.w4 td { font-weight: 400; } + tr.w5 td { font-weight: 500; } + tr.w6 td { font-weight: 600; } + tr.w7 td { font-weight: 700; } + tr.w8 td { font-weight: 800; } + tr.w9 td { font-weight: 900; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-weight-lighter-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-weight-lighter-001.0.scss new file mode 100644 index 0000000000..1840142b38 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-weight-lighter-001.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-weight-lighter-001.htm */ + + span#verify { font-family: CSSTest Verify; font-weight: normal; } + div { margin-bottom: 1em; } + body { margin: 50px; } + table { + border-collapse: collapse; + } + th { + font-weight: normal; + text-align: left; + padding-right: 1em; + } + span { font-weight: lighter; } + thead th { text-align: center; padding-bottom: 1em; } + td { width: 5em; text-align: center; } + td.f1 { font-family: CSSTest Weights Full; } + td.f2 { font-family: CSSTest Weights W1479; } + td.f3 { font-family: CSSTest Weights W15; } + td.f4 { font-family: CSSTest Weights W24; } + td.f5 { font-family: CSSTest Weights W2569; } + td.f6 { font-family: CSSTest Weights W258; } + td.f7 { font-family: CSSTest Weights W3589; } + td.f8 { font-family: CSSTest Weights W47; } + th.f1 { display: table-cell; } + th.f2 { display: table-cell; } + th.f3 { display: table-cell; } + th.f4 { display: table-cell; } + th.f5 { display: table-cell; } + th.f6 { display: table-cell; } + th.f7 { display: table-cell; } + th.f8 { display: table-cell; } + + tr.w1 td { font-weight: 100; } + tr.w2 td { font-weight: 200; } + tr.w3 td { font-weight: 300; } + tr.w4 td { font-weight: 400; } + tr.w5 td { font-weight: 500; } + tr.w6 td { font-weight: 600; } + tr.w7 td { font-weight: 700; } + tr.w8 td { font-weight: 800; } + tr.w9 td { font-weight: 900; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-weight-normal-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-weight-normal-001.0.scss new file mode 100644 index 0000000000..29a665ee9a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-weight-normal-001.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-weight-normal-001.htm */ + + span#verify { font-family: CSSTest Verify; font-weight: normal; } + div { margin-bottom: 1em; } + body { margin: 50px; } + table { + border-collapse: collapse; + } + th { + font-weight: normal; + text-align: left; + padding-right: 1em; + } + span { } + thead th { text-align: center; padding-bottom: 1em; } + td { width: 5em; text-align: center; } + td.f1 { font-family: CSSTest Weights Full; } + td.f2 { font-family: CSSTest Weights W1479; } + td.f3 { font-family: CSSTest Weights W15; } + td.f4 { font-family: CSSTest Weights W24; } + td.f5 { font-family: CSSTest Weights W2569; } + td.f6 { font-family: CSSTest Weights W258; } + td.f7 { font-family: CSSTest Weights W3589; } + td.f8 { font-family: CSSTest Weights W47; } + th.f1 { display: table-cell; } + th.f2 { display: table-cell; } + th.f3 { display: table-cell; } + th.f4 { display: table-cell; } + th.f5 { display: table-cell; } + th.f6 { display: table-cell; } + th.f7 { display: table-cell; } + th.f8 { display: table-cell; } + + tr.w1 td { font-weight: 100; } + tr.w2 td { font-weight: 200; } + tr.w3 td { font-weight: 300; } + tr.w4 td { font-weight: 400; } + tr.w5 td { font-weight: 500; } + tr.w6 td { font-weight: 600; } + tr.w7 td { font-weight: 700; } + tr.w8 td { font-weight: 800; } + tr.w9 td { font-weight: 900; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-000.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-000.0.scss new file mode 100644 index 0000000000..9ddf923d46 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-000.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-000.htm */ + +span { display: inline-block; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-height-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-height-001.0.scss new file mode 100644 index 0000000000..595b0fef80 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-height-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-height-001.htm */ + +div { display: inline-block; width: 10em; background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-height-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-height-002.0.scss new file mode 100644 index 0000000000..2876e73ab5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-height-002.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-height-002.htm */ + +div { display: inline-block; height: 5em; width:10em; vertical-align: baseline; background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-valign-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-valign-001.0.scss new file mode 100644 index 0000000000..5d2446d71f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-valign-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-valign-001.htm */ + +span { display: inline-block; } +span > span { display: block; visibility: hidden; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-valign-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-valign-002.0.scss new file mode 100644 index 0000000000..f262046c2b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-valign-002.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-valign-002.htm */ + +body { background: white; color: black; } +span { display: inline-block; margin: 3px 0; border: 4px solid white; border-width: 4px 0; padding: 9px 0; } +span > span { display: block; visibility: hidden; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-001a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-001a.0.scss new file mode 100644 index 0000000000..18c2f89059 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-001a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-width-001a.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-block; background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-001b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-001b.0.scss new file mode 100644 index 0000000000..438331f06c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-001b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-width-001b.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-block; background: green; color: white; width: 10em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-002a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-002a.0.scss new file mode 100644 index 0000000000..851a3e0556 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-002a.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-width-002a.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-block; background: green; color: white; } +body > div > div > div { width: 20em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-002b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-002b.0.scss new file mode 100644 index 0000000000..652628c616 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-002b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-width-002b.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-block; background: green; color: white; width: 20em; } +body > div > div > div { width: 20em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-001.0.scss new file mode 100644 index 0000000000..b04dd45c9a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-zorder-001.htm */ + +div { width: 2em; height: 1em; } +span { display:inline-block; vertical-align: top; width: 2em; height: 1em; background: green; } +div#after { margin-top:-1em; background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-002.0.scss new file mode 100644 index 0000000000..f888f84439 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-002.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-zorder-002.htm */ + +div { width: 2em; height: 1em; } +span { display:inline-block; vertical-align: top; width: 2em; height: 1em; } +span span { display: block; background: green; } +div#after { margin-top: -1em; background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-003.0.scss new file mode 100644 index 0000000000..902c10615b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-003.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-zorder-003.htm */ + +div { height: 1em; } +div#test span { display:inline-block; vertical-align: top; height: 1em; background: red; color: red; } +div#after { margin-top:-1em; } +div#after span { display: inline; vertical-align: top; background: green; color: green; border-bottom: 0.25em solid green; border-top: 0.25em solid green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-004.0.scss new file mode 100644 index 0000000000..2a326680b7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-004.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-zorder-004.htm */ + +div#test span { display:inline-block; vertical-align: top; background: green; color: green; border-bottom: 0.25em solid green; border-top: 0.25em solid green; } +div#before { height: 1em; margin-bottom:-1em; } +div#before span { display: inline; vertical-align: top; background: red; color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-005.0.scss new file mode 100644 index 0000000000..7831203024 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-005.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-zorder-005.htm */ + +div#test > span { display:inline-block; vertical-align: top; } +div#test > span > span { display: block; background: green; color: green; border-bottom: 0.25em solid green; border-top: 0.25em solid green; } +div#before { height: 1em; margin-bottom:-1em; } +div#before > span { display: inline; vertical-align: top; background: red; color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-002a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-002a.0.scss new file mode 100644 index 0000000000..bbb79e3952 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-002a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-002a.htm */ + +span { display: inline-table; } +span > span { display: block; visibility: hidden; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-002b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-002b.0.scss new file mode 100644 index 0000000000..085e0301ae --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-002b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-002b.htm */ + +span > span { display: table-cell; } +span > span > span { display: block; visibility: hidden; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-003.0.scss new file mode 100644 index 0000000000..ced4d93ae8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-003.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-003.htm */ + +span { display: inline-table; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-height-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-height-001.0.scss new file mode 100644 index 0000000000..76cf9d68e4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-height-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-height-001.htm */ + +div { display: inline-table; width: 10em; background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-height-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-height-002.0.scss new file mode 100644 index 0000000000..ee38aae8ea --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-height-002.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-height-002.htm */ + +div { display: inline-table; height: 5em; vertical-align: baseline; background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-valign-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-valign-001.0.scss new file mode 100644 index 0000000000..73e683bbcd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-valign-001.0.scss @@ -0,0 +1,15 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-valign-001.htm */ + +span#table { display: inline-table; } +span#rowgroup { display: table-row-group; } +span#row { display: table-row; } +span#cell { display: table-cell; } +span#table, span#rowgroup, span#row, span#cell { + border: 4px solid white; + margin: 3px 0; + border-width: 4px 0; + padding: 9px 0; + border-spacing: 0 5px; +} +span#block { display: block; visibility: hidden; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-001a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-001a.0.scss new file mode 100644 index 0000000000..78e2c1ecab --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-001a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-width-001a.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-table; background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-001b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-001b.0.scss new file mode 100644 index 0000000000..3a7ba0f225 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-001b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-width-001b.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-table; background: green; color: white; width: 10em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-002a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-002a.0.scss new file mode 100644 index 0000000000..686714f14a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-002a.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-width-002a.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-table; background: green; color: white; } +body > div > div > div { width: 20em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-002b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-002b.0.scss new file mode 100644 index 0000000000..c363def1ac --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-002b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-width-002b.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-table; background: green; color: white; width: 20em; } +body > div > div > div { width: 20em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-001.0.scss new file mode 100644 index 0000000000..79c11c95e5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-zorder-001.htm */ + +div { width: 2em; height: 2em; } +span { display:inline-table; vertical-align: top; width: 2em; height: 2em; background: green; } +div#after { margin-top:-2em; background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-002.0.scss new file mode 100644 index 0000000000..6e208ec410 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-002.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-zorder-002.htm */ + +div { width: 2em; height: 2em; } +span { display:inline-table; vertical-align: top; width: 2em; height: 2em; } +span span { display: block; background: green; } +div#after { margin-top: -2em; background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-003.0.scss new file mode 100644 index 0000000000..8722af2fb2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-003.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-zorder-003.htm */ + +div { height: 1em; } +div#test > span { display:inline-table; vertical-align: top; height: 1em; background: red; color: red; } +div#after { margin-top:-1em; } +div#after > span { display: inline; vertical-align: top; background: green; color: green; border-bottom: 0.25em solid green; border-top: 0.25em solid green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-004.0.scss new file mode 100644 index 0000000000..344d56ff21 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-004.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-zorder-004.htm */ + +div#test > span { display:inline-table; vertical-align: top; background: green; color: green; border-bottom: 0.25em solid green; border-top: 0.25em solid green; } +div#before { height: 1em; margin-bottom:-1em; } +div#before > span { display: inline; vertical-align: top; background: red; color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-005.0.scss new file mode 100644 index 0000000000..de883783f6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-005.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-zorder-005.htm */ + +div#test > span { display:inline-table; vertical-align: top; } +div#test > span > span { display: block; background: green; color: green; border-bottom: 0.25em solid green; border-top: 0.25em solid green; } +div#before { height: 1em; margin-bottom:-1em; } +div#before > span { display: inline; vertical-align: top; background: red; color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/quotes-035.0.scss b/theme-compiler/tests/resources/w3ctests/scss/quotes-035.0.scss new file mode 100644 index 0000000000..7e8809a736 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/quotes-035.0.scss @@ -0,0 +1,29 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/quotes-035.htm */ + + + .party1 * { display: inline; } + .party1 .a { quotes: "Isn" "'" + "t" "FAIL!" + "FAIL!" " i"; } + .party1 .b { quotes: "" "FAIL!!" + " wonderful" "!!!" + " to " " work" + "see " " [FAIL to]" + "C" "quotes" + "S" " "; } + .party1 .c { quotes: none; } + .party1 .d { quotes: "FAIL!" "FAIL!" + "FAIL!" "FAIL!" + "" ""; } + .test { margin-left: 2em; } + .test .no-open:before { content: no-open-quote; } + .test .open:before { content: open-quote; } + .test .triple-open:before { content: open-quote open-quote open-quote; } + .test .no-close:after { content: no-close-quote; } + .test .triple-no-close:after { content: no-close-quote no-close-quote no-close-quote; } + .test .close:after { content: close-quote; } + .test .triple-close:after { content: close-quote close-quote close-quote; } + .test .no-close-open:before { content: no-close-quote open-quote; } + + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/quotes-035a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/quotes-035a.0.scss new file mode 100644 index 0000000000..e4e3d17658 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/quotes-035a.0.scss @@ -0,0 +1,31 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/quotes-035a.htm */ + + + .party1 * { display: inline; } + .party1 .a { quotes: "Isn" "'" + "t" "FAIL!" + "FAIL!" " i"; } + .party1 .b { quotes: "" "FAIL!!" + " wonderful" "!!!" + " to " " work" + "see " " [FAIL to]" + "C" "quotes" + "S" " " + "S" " "; } + .party1 .c { quotes: none; } + .party1 .d { quotes: "FAIL!" "FAIL!" + "FAIL!" "FAIL!" + "" "" + "" ""; } + .test { margin-left: 2em; } + .test .no-open:before { content: no-open-quote; } + .test .open:before { content: open-quote; } + .test .triple-open:before { content: open-quote open-quote open-quote; } + .test .no-close:after { content: no-close-quote; } + .test .triple-no-close:after { content: no-close-quote no-close-quote no-close-quote; } + .test .close:after { content: close-quote; } + .test .triple-close:after { content: close-quote close-quote close-quote; } + .test .no-close-open:before { content: no-close-quote open-quote; } + + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/quotes-036.0.scss b/theme-compiler/tests/resources/w3ctests/scss/quotes-036.0.scss new file mode 100644 index 0000000000..2d2927c254 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/quotes-036.0.scss @@ -0,0 +1,35 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/quotes-036.htm */ + + + .party1 * { display: inline; } + .party1 .a { quotes: "Isn" "'" + "t" "FAIL!" + "FAIL!" " i"; } + .party1 .b { quotes: "" "FAIL!!" + " wonderful" "!!!" + " to " " work" + "see " " [FAIL to]" + "C" "quotes" + "S" " "; } + .party1 .c { quotes: none; } + .party1 .d { quotes: "FAIL!" "FAIL!" + "FAIL!" "FAIL!" + "" ""; } + .test { margin-left: 2em; } + .test .no-open:before { content: no-open-quote; } + .test .open:before { content: open-quote; } + .test .triple-open:before { content: open-quote open-quote open-quote; } + .test .no-close:after { content: no-close-quote; } + .test .triple-no-close:after { content: no-close-quote no-close-quote no-close-quote; } + .test .close:after { content: close-quote; } + .test .triple-close:after { content: close-quote close-quote close-quote; } + .test .no-close-open:before { content: no-close-quote open-quote; } + + /* hr br */ + .test hr, .test br { display: inline; margin: 0; padding: 0; + height: auto; width: auto; border: none; color: inherit; + background: transparent; } + .test br:before { content: "" } + .test br:after { content: "" } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/ref-green-box-100x100.0.scss b/theme-compiler/tests/resources/w3ctests/scss/ref-green-box-100x100.0.scss new file mode 100644 index 0000000000..6ee83f95d6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/ref-green-box-100x100.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/support/ref-green-box-100x100.htm */ + + div { + width: 100px; + height: 100px; + background: green; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-cell-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-cell-001.0.scss new file mode 100644 index 0000000000..c03a4049a6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-cell-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bc-cell-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 8px 6px; /* collapsed */ + padding: 3px 7px 8px 6px; /* ignored */ + border-collapse: collapse; + } + + td { + border: transparent solid; + border-width: 2px 0 4px 2px; /* collapsed */ + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color td.t { background-color: aqua; } + + table.imagetl td.t, table.imagebr td.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl td.t { background-position: top left; /* default */ } + table.imagebr td.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-colgroup-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-colgroup-001.0.scss new file mode 100644 index 0000000000..d0ce72d0e0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-colgroup-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bc-colgroup-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 8px 6px; /* collapsed */ + padding: 3px 7px 8px 6px; /* ignored */ + border-collapse: collapse; + } + + td { + border: transparent solid; + border-width: 2px 0 4px 2px; /* collapsed */ + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color colgroup.t { background-color: aqua; } + + table.imagetl colgroup.t, table.imagebr colgroup.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl colgroup.t { background-position: top left; /* default */ } + table.imagebr colgroup.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-column-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-column-001.0.scss new file mode 100644 index 0000000000..c3d2bd0503 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-column-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bc-column-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 8px 6px; /* collapsed */ + padding: 3px 7px 8px 6px; /* ignored */ + border-collapse: collapse; + } + + td { + border: transparent solid; + border-width: 2px 0 4px 2px; /* collapsed */ + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color col.t { background-color: aqua; } + + table.imagetl col.t, table.imagebr col.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl col.t { background-position: top left; /* default */ } + table.imagebr col.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-row-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-row-001.0.scss new file mode 100644 index 0000000000..1a7049fba8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-row-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bc-row-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 8px 6px; /* collapsed */ + padding: 3px 7px 8px 6px; /* ignored */ + border-collapse: collapse; + } + + td { + border: transparent solid; + border-width: 2px 0 4px 2px; /* collapsed */ + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color tr.t { background-color: aqua; } + + table.imagetl tr.t, table.imagebr tr.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl tr.t { background-position: top left; /* default */ } + table.imagebr tr.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-rowgroup-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-rowgroup-001.0.scss new file mode 100644 index 0000000000..69c10cca9f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-rowgroup-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bc-rowgroup-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 8px 6px; /* collapsed */ + padding: 3px 7px 8px 6px; /* ignored */ + border-collapse: collapse; + } + + td { + border: transparent solid; + border-width: 2px 0 4px 2px; /* collapsed */ + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color tbody.t { background-color: aqua; } + + table.imagetl tbody.t, table.imagebr tbody.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl tbody.t { background-position: top left; /* default */ } + table.imagebr tbody.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-table-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-table-001.0.scss new file mode 100644 index 0000000000..b6a8f27ab2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-table-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bc-table-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 8px 6px; /* collapsed */ + padding: 3px 7px 8px 6px; /* ignored */ + border-collapse: collapse; + } + + td { + border: transparent solid; + border-width: 2px 0 4px 2px; /* collapsed */ + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color { background-color: aqua; } + + table.imagetl, table.imagebr { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl { background-position: top left; /* default */ } + table.imagebr { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-cell-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-cell-001.0.scss new file mode 100644 index 0000000000..02289c80e2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-cell-001.0.scss @@ -0,0 +1,34 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bs-cell-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 7px 3px; + padding: 3px 7px 8px 6px; + border-collapse: separate; + border-spacing: 2px 3px; + } + + td { + border: transparent solid; + border-width: 2px 1px 4px 3px; + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color td.t { background-color: aqua; } + + table.imagetl td.t, table.imagebr td.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl td.t { background-position: top left; /* default */ } + table.imagebr td.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-colgroup-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-colgroup-001.0.scss new file mode 100644 index 0000000000..dae2af72ae --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-colgroup-001.0.scss @@ -0,0 +1,34 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bs-colgroup-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 7px 3px; + padding: 3px 7px 8px 6px; + border-collapse: separate; + border-spacing: 2px 3px; + } + + td { + border: transparent solid; + border-width: 2px 1px 4px 3px; + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color colgroup.t { background-color: aqua; } + + table.imagetl colgroup.t, table.imagebr colgroup.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl colgroup.t { background-position: top left; /* default */ } + table.imagebr colgroup.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-column-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-column-001.0.scss new file mode 100644 index 0000000000..8289f3a4bb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-column-001.0.scss @@ -0,0 +1,34 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bs-column-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 7px 3px; + padding: 3px 7px 8px 6px; + border-collapse: separate; + border-spacing: 2px 3px; + } + + td { + border: transparent solid; + border-width: 2px 1px 4px 3px; + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color col.t { background-color: aqua; } + + table.imagetl col.t, table.imagebr col.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl col.t { background-position: top left; /* default */ } + table.imagebr col.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-row-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-row-001.0.scss new file mode 100644 index 0000000000..f2ec27e38b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-row-001.0.scss @@ -0,0 +1,34 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bs-row-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 7px 3px; + padding: 3px 7px 8px 6px; + border-collapse: separate; + border-spacing: 2px 3px; + } + + td { + border: transparent solid; + border-width: 2px 1px 4px 3px; + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color tr.t { background-color: aqua; } + + table.imagetl tr.t, table.imagebr tr.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl tr.t { background-position: top left; /* default */ } + table.imagebr tr.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-rowgroup-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-rowgroup-001.0.scss new file mode 100644 index 0000000000..cb5b8f79a6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-rowgroup-001.0.scss @@ -0,0 +1,34 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bs-rowgroup-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 7px 3px; + padding: 3px 7px 8px 6px; + border-collapse: separate; + border-spacing: 2px 3px; + } + + td { + border: transparent solid; + border-width: 2px 1px 4px 3px; + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color tbody.t { background-color: aqua; } + + table.imagetl tbody.t, table.imagebr tbody.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl tbody.t { background-position: top left; /* default */ } + table.imagebr tbody.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-table-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-table-001.0.scss new file mode 100644 index 0000000000..6d1eabb6a8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-table-001.0.scss @@ -0,0 +1,34 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bs-table-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 7px 3px; + padding: 3px 7px 8px 6px; + border-collapse: separate; + border-spacing: 2px 3px; + } + + td { + border: transparent solid; + border-width: 2px 1px 4px 3px; + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color { background-color: aqua; } + + table.imagetl, table.imagebr { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl { background-position: top left; /* default */ } + table.imagebr { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.0.scss new file mode 100644 index 0000000000..bc5733aedd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-in-inline-001.htm */ +.style { display: table-row } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.1.scss new file mode 100644 index 0000000000..a4d01762bd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-in-inline-001.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.2.scss new file mode 100644 index 0000000000..fe13eb4cbb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-in-inline-001.htm */ +.style { display: table-cell } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.0.scss new file mode 100644 index 0000000000..15d24294d1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-001.htm */ + + +td { vertical-align: baseline; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.1.scss new file mode 100644 index 0000000000..c93d980b57 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-001.htm */ +.style { padding-top: 40px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.2.scss new file mode 100644 index 0000000000..8c98e302cc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-001.htm */ +.style { padding-top: 20px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.3.scss new file mode 100644 index 0000000000..90b0e303b2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-001.htm */ +.style { padding-top: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.0.scss new file mode 100644 index 0000000000..9e8fc17d73 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-002.htm */ + + +td { vertical-align: baseline; padding-top: 0; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.1.scss new file mode 100644 index 0000000000..c8a265b2e4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-002.htm */ +.style { padding-top: 40px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.2.scss new file mode 100644 index 0000000000..84c4a43819 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-002.htm */ +.style { padding-top: 20px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.3.scss new file mode 100644 index 0000000000..b212fc065f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-002.htm */ +.style { padding-top: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.0.scss new file mode 100644 index 0000000000..b623b103e4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-003.htm */ + + +td { vertical-align: baseline; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.1.scss new file mode 100644 index 0000000000..646c3603f7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-003.htm */ +.style { padding-top: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.2.scss new file mode 100644 index 0000000000..c461bdba34 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-003.htm */ +.style { padding-top: 40px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.3.scss new file mode 100644 index 0000000000..3b0a262d34 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-003.htm */ +.style { padding-top: 12px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.4.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.4.scss new file mode 100644 index 0000000000..055905d9d7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-003.htm */ +.style { padding-top: 3px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.0.scss new file mode 100644 index 0000000000..3563cde096 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-004.htm */ + + +td { vertical-align: baseline; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.1.scss new file mode 100644 index 0000000000..eac995c41d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-004.htm */ +.style { padding-top: 12px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.2.scss new file mode 100644 index 0000000000..b2745143e2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-004.htm */ +.style { padding-top: 3px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.3.scss new file mode 100644 index 0000000000..15214ad16a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-004.htm */ +.style { padding-top: 40px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.4.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.4.scss new file mode 100644 index 0000000000..4b93164a1b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-004.htm */ +.style { padding-top: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.0.scss new file mode 100644 index 0000000000..49e4923cc8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ + + +td { vertical-align: baseline; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.1.scss new file mode 100644 index 0000000000..7896c6342c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ +.style { padding-top: 0; height: 80px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.2.scss new file mode 100644 index 0000000000..e000d2e340 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ +.style { padding-top: 40px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.3.scss new file mode 100644 index 0000000000..0a30e0d376 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ +.style { padding-top: 12px; height: 120px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.4.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.4.scss new file mode 100644 index 0000000000..c4152587ea --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ +.style { padding-top: 3px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.5.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.5.scss new file mode 100644 index 0000000000..ec44e94e6d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ +.style { padding-top: 40px; height: 160px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.6.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.6.scss new file mode 100644 index 0000000000..3a3990256c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.6.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ +.style { padding-top: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.0.scss new file mode 100644 index 0000000000..3f56772677 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ + + +td { vertical-align: baseline; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.1.scss new file mode 100644 index 0000000000..4b20736354 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ +.style { padding-top: 0; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.2.scss new file mode 100644 index 0000000000..9f71b57dd9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ +.style { padding-top: 40px; height: 80px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.3.scss new file mode 100644 index 0000000000..dd8cd111f5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ +.style { padding-top: 12px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.4.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.4.scss new file mode 100644 index 0000000000..90ef71d106 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ +.style { padding-top: 3px; height: 120px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.5.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.5.scss new file mode 100644 index 0000000000..6d33486f7c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ +.style { padding-top: 40px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.6.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.6.scss new file mode 100644 index 0000000000..0bec2dee1a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.6.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ +.style { padding-top: 0; height: 160px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.0.scss new file mode 100644 index 0000000000..6c11f1b90f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-007.htm */ + + +td { vertical-align: baseline; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.1.scss new file mode 100644 index 0000000000..4863e1df5b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-007.htm */ +.style { padding-top: 0; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.2.scss new file mode 100644 index 0000000000..d32301afb9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-007.htm */ +.style { padding-top: 40px; height: 80px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.3.scss new file mode 100644 index 0000000000..b25a964d73 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-007.htm */ +.style { padding-top: 12px; height: 160px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.4.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.4.scss new file mode 100644 index 0000000000..98808066f1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-007.htm */ +.style { padding-top: 3px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.5.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.5.scss new file mode 100644 index 0000000000..8a366d4df2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-007.htm */ +.style { padding-top: 40px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-113.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-113.0.scss new file mode 100644 index 0000000000..01e37d208c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-113.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-113.htm */ + +p { text-indent: 100px } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-114.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-114.0.scss new file mode 100644 index 0000000000..ec19eb2816 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-114.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-114.htm */ + +p { text-indent: 0px } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-115.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-115.0.scss new file mode 100644 index 0000000000..569f033276 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-115.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-115.htm */ + +p { text-indent: 100px } +span { background: yellow } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.0.scss new file mode 100644 index 0000000000..6ed93593e9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.0.scss @@ -0,0 +1,17 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-001.htm */ + + +body { font-size: 12px; width: 1px; } + +body > div, body > pre { + float: left; clear: left; margin: 1px; height: 2em; + border: medium solid; +} + +span { + display: inline-block; + height: 1em; + width: 1em; +} + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.1.scss new file mode 100644 index 0000000000..c71814945e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-001.htm */ +.style { text-indent: 3em; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.11.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.11.scss new file mode 100644 index 0000000000..d43af6804b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.11.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-001.htm */ +.style { width: 6em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.4.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.4.scss new file mode 100644 index 0000000000..aecf9b104d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-001.htm */ +.style { text-indent: 3em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.5.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.5.scss new file mode 100644 index 0000000000..4d3f04cdf4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-001.htm */ +.style { width: 1em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.8.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.8.scss new file mode 100644 index 0000000000..11f2a1b4c7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.8.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-001.htm */ +.style { width: 2em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.0.scss new file mode 100644 index 0000000000..7dcafd1001 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.0.scss @@ -0,0 +1,17 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-002.htm */ + + +body { font-size: 12px; } + +body > div, body > pre { + float: left; clear: left; margin: 1px; height: 2em; + border: medium solid; +} + +span { + display: inline-block; + height: 1em; + width: 1em; +} + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.1.scss new file mode 100644 index 0000000000..fb9ad27680 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-002.htm */ +.style { text-indent: 3em; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.11.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.11.scss new file mode 100644 index 0000000000..9783ca14ac --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.11.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-002.htm */ +.style { width: 6em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.4.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.4.scss new file mode 100644 index 0000000000..dc20dd4b85 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-002.htm */ +.style { text-indent: 3em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.5.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.5.scss new file mode 100644 index 0000000000..41cee98d11 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-002.htm */ +.style { width: 1em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.8.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.8.scss new file mode 100644 index 0000000000..49161e2910 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.8.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-002.htm */ +.style { width: 2em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.0.scss new file mode 100644 index 0000000000..98f79df5fd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.0.scss @@ -0,0 +1,17 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ + + +body { font-size: 12px; } + +body > div, body > pre { + float: left; clear: left; margin: 1px; height: 2em; + border: medium solid; +} + +span { + display: inline-block; + height: 1em; + width: 1em; +} + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.1.scss new file mode 100644 index 0000000000..ef4f538864 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { width: 1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.11.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.11.scss new file mode 100644 index 0000000000..29d824d66e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.11.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { width: 3em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.17.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.17.scss new file mode 100644 index 0000000000..ce29a677f1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.17.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { width: 4em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.2.scss new file mode 100644 index 0000000000..d9169cf13e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { text-indent: -3em; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.25.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.25.scss new file mode 100644 index 0000000000..575d7393f2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.25.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { text-indent: -3em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.3.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.3.scss new file mode 100644 index 0000000000..44021e266f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { width: 1em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.5.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.5.scss new file mode 100644 index 0000000000..0b02a652f9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { width: 5em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.0.scss new file mode 100644 index 0000000000..4fcfac5be6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.0.scss @@ -0,0 +1,17 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ + + +body { font-size: 12px; } + +body > div, body > pre { + float: left; clear: left; margin: 1px; height: 2em; + border: medium solid; +} + +span { + display: inline-block; + height: 1em; + width: 1em; +} + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.1.scss new file mode 100644 index 0000000000..a8cd2367c3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ +.style { text-indent: -3em; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.10.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.10.scss new file mode 100644 index 0000000000..549eca8142 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.10.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ +.style { width: 3em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.16.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.16.scss new file mode 100644 index 0000000000..d97bdc5805 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.16.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ +.style { width: 4em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.2.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.2.scss new file mode 100644 index 0000000000..645265fcee --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ +.style { width: 1em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.24.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.24.scss new file mode 100644 index 0000000000..a43261231e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.24.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ +.style { text-indent: -3em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.4.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.4.scss new file mode 100644 index 0000000000..60d30f9cdb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ +.style { width: 5em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-percent-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-percent-001.0.scss new file mode 100644 index 0000000000..2204bedfe4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-percent-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-percent-001.htm */ + +div { width: 500px; } +p { width: 300px; text-indent: 10%; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-wrap-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-wrap-001.0.scss new file mode 100644 index 0000000000..fc5dab0d52 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-wrap-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-wrap-001.htm */ + +p { text-indent: 100px } +span { background: yellow } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-001.0.scss new file mode 100644 index 0000000000..515fa762c3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-001.htm */ +.style { letter-spacing:2px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-001.1.scss new file mode 100644 index 0000000000..69ff275066 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-001.htm */ +.style { text-transform:capitalize } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-002.0.scss new file mode 100644 index 0000000000..4d744e17b1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-002.htm */ +.style { letter-spacing:2px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-002.1.scss new file mode 100644 index 0000000000..c6bb7e4bef --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-002.htm */ +.style { text-transform:capitalize } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.0.scss new file mode 100644 index 0000000000..0ba48a86c0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-003.htm */ +.style { letter-spacing:2px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.1.scss new file mode 100644 index 0000000000..e1cb8d6745 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-003.htm */ +.style { text-transform:capitalize } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.4.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.4.scss new file mode 100644 index 0000000000..a0d1d9a606 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-003.htm */ +.style { text-transform:none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.7.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.7.scss new file mode 100644 index 0000000000..438a1e4be2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.7.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-003.htm */ +.style { white-space:nowrap } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-lowercase-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-lowercase-001.0.scss new file mode 100644 index 0000000000..fe6e97e39f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-lowercase-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-lowercase-001.htm */ +.style { text-transform:lowercase } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-uppercase-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-uppercase-001.0.scss new file mode 100644 index 0000000000..7dc1c293cb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-uppercase-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-uppercase-001.htm */ +.style { text-transform:uppercase } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-uppercase-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-uppercase-002.0.scss new file mode 100644 index 0000000000..c18eff8824 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-uppercase-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-uppercase-002.htm */ +.style { text-transform:uppercase } diff --git a/theme-compiler/tests/src/com/vaadin/sass/resolvers/VaadinResolverTest.java b/theme-compiler/tests/src/com/vaadin/sass/resolvers/VaadinResolverTest.java index 59b49888c2..0183142747 100644 --- a/theme-compiler/tests/src/com/vaadin/sass/resolvers/VaadinResolverTest.java +++ b/theme-compiler/tests/src/com/vaadin/sass/resolvers/VaadinResolverTest.java @@ -40,16 +40,26 @@ import java.lang.reflect.Method; import org.junit.Assert; import org.junit.Test; -import com.vaadin.sass.internal.resolver.VaadinResolver; +import com.vaadin.sass.internal.resolver.AbstractResolver; +import com.vaadin.sass.internal.resolver.ClassloaderResolver; +import com.vaadin.sass.internal.resolver.FilesystemResolver; public class VaadinResolverTest { @Test - public void testPathNormalization() throws Exception { + public void testFilesystemResolverPathNormalization() throws Exception { + testPathNormalization(new FilesystemResolver()); + } + + @Test + public void testClassloaderResolverPathNormalization() throws Exception { + testPathNormalization(new ClassloaderResolver()); + } - VaadinResolver resolver = new VaadinResolver(); + public void testPathNormalization(AbstractResolver resolver) + throws Exception { - Method normalizeMethod = VaadinResolver.class.getDeclaredMethod( + Method normalizeMethod = AbstractResolver.class.getDeclaredMethod( "normalize", String.class); normalizeMethod.setAccessible(true); diff --git a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/AbstractDirectoryScanningSassTests.java b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/AbstractDirectoryScanningSassTests.java index 40da6179f6..6a5f8db73d 100644 --- a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/AbstractDirectoryScanningSassTests.java +++ b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/AbstractDirectoryScanningSassTests.java @@ -19,7 +19,6 @@ package com.vaadin.sass.testcases.scss; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; -import java.io.FilenameFilter; import java.io.IOException; import java.net.URISyntaxException; import java.net.URL; @@ -29,54 +28,93 @@ import java.util.List; import org.apache.commons.io.IOUtils; import org.junit.Assert; +import org.w3c.css.sac.CSSException; +import org.w3c.css.sac.CSSParseException; import com.vaadin.sass.internal.ScssStylesheet; +import com.vaadin.sass.internal.handler.SCSSDocumentHandler; +import com.vaadin.sass.internal.handler.SCSSDocumentHandlerImpl; +import com.vaadin.sass.internal.handler.SCSSErrorHandler; import com.vaadin.sass.testcases.scss.SassTestRunner.FactoryTest; public abstract class AbstractDirectoryScanningSassTests { public static Collection<String> getScssResourceNames(URL directoryUrl) - throws URISyntaxException { + throws URISyntaxException, IOException { List<String> resources = new ArrayList<String>(); - for (File scssFile : getScssFiles(directoryUrl)) { - resources.add(scssFile.getName()); + for (String scssFile : getScssFiles(directoryUrl)) { + resources.add(scssFile); } return resources; } - private static File[] getScssFiles(URL directoryUrl) - throws URISyntaxException { + private static List<String> getScssFiles(URL directoryUrl) + throws URISyntaxException, IOException { URL sasslangUrl = directoryUrl; File sasslangDir = new File(sasslangUrl.toURI()); File scssDir = new File(sasslangDir, "scss"); Assert.assertTrue(scssDir.exists()); - return scssDir.listFiles(new FilenameFilter() { + List<File> scssFiles = new ArrayList<File>(); + addScssFilesRecursively(scssDir, scssFiles); - @Override - public boolean accept(File dir, String name) { - return name.endsWith(".scss"); + List<String> scssRelativeNames = new ArrayList<String>(); + for (File f : scssFiles) { + String relativeName = f.getCanonicalPath().substring( + scssDir.getCanonicalPath().length() + 1); + scssRelativeNames.add(relativeName); + } + return scssRelativeNames; + } + + private static void addScssFilesRecursively(File scssDir, + List<File> scssFiles) { + for (File f : scssDir.listFiles()) { + if (f.isDirectory()) { + addScssFilesRecursively(f, scssFiles); + } else if (f.getName().endsWith(".scss") + && !f.getName().startsWith("_")) { + scssFiles.add(f); } - }); + } } protected abstract URL getResourceURL(String path); @FactoryTest public void compareScssWithCss(String scssResourceName) throws Exception { - String referenceCss; File scssFile = getSassLangResourceFile(scssResourceName); - File cssFile = getCssFile(scssFile); - referenceCss = IOUtils.toString(new FileInputStream(cssFile)); - ScssStylesheet scssStylesheet = ScssStylesheet.get(scssFile - .getAbsolutePath()); + + SCSSDocumentHandler documentHandler = new SCSSDocumentHandlerImpl(); + SCSSErrorHandler errorHandler = new SCSSErrorHandler() { + @Override + public void error(CSSParseException arg0) throws CSSException { + super.error(arg0); + Assert.fail(arg0.getMessage()); + } + + @Override + public void fatalError(CSSParseException arg0) throws CSSException { + super.error(arg0); + Assert.fail(arg0.getMessage()); + } + }; + + ScssStylesheet scssStylesheet = ScssStylesheet.get( + scssFile.getCanonicalPath(), null, documentHandler, + errorHandler); scssStylesheet.compile(); String parsedCss = scssStylesheet.toString(); - String normalizedReference = normalize(referenceCss); - String normalizedParsed = normalize(parsedCss); - Assert.assertEquals("Original CSS and parsed CSS do not match for " - + scssResourceName, normalizedReference, normalizedParsed); + if (getCssFile(scssFile) != null) { + String referenceCss = IOUtils.toString(new FileInputStream( + getCssFile(scssFile))); + String normalizedReference = normalize(referenceCss); + String normalizedParsed = normalize(parsedCss); + + Assert.assertEquals("Original CSS and parsed CSS do not match for " + + scssResourceName, normalizedReference, normalizedParsed); + } } private String normalize(String css) { @@ -88,6 +126,9 @@ public abstract class AbstractDirectoryScanningSassTests { css = css.replaceAll("^[\n\r\t ]*", ""); // remove trailing whitespace css = css.replaceAll("[\n\r\t ]*$", ""); + css = css.replaceAll(";", ";\n"); + css = css.replaceAll("\\{", "\\{\n"); + css = css.replaceAll("}", "}\n"); return css; } @@ -103,7 +144,7 @@ public abstract class AbstractDirectoryScanningSassTests { return new File(res.toURI()); } - private File getCssFile(File scssFile) { - return new File(scssFile.getAbsolutePath().replace("scss", "css")); + protected File getCssFile(File scssFile) throws IOException { + return new File(scssFile.getCanonicalPath().replace("scss", "css")); } } diff --git a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/AutomaticSassTests.java b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/AutomaticSassTests.java index 4134c564f9..66e0bedac0 100644 --- a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/AutomaticSassTests.java +++ b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/AutomaticSassTests.java @@ -15,6 +15,7 @@ */ package com.vaadin.sass.testcases.scss; +import java.io.IOException; import java.net.URISyntaxException; import java.net.URL; import java.util.Collection; @@ -37,7 +38,7 @@ public class AutomaticSassTests extends AbstractDirectoryScanningSassTests { @TestFactory public static Collection<String> getScssResourceNames() - throws URISyntaxException { + throws URISyntaxException, IOException { return getScssResourceNames(getResourceURLInternal("")); } diff --git a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/CompassImports.java b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/CompassImports.java new file mode 100644 index 0000000000..1e3eb09f0c --- /dev/null +++ b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/CompassImports.java @@ -0,0 +1,80 @@ +/* + * Copyright 2000-2013 Vaadin Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + +package com.vaadin.sass.testcases.scss; + +import java.io.File; +import java.io.IOException; + +import junit.framework.Assert; + +import org.junit.Test; +import org.w3c.css.sac.CSSException; + +import com.vaadin.sass.AbstractTestBase; +import com.vaadin.sass.internal.ScssStylesheet; +import com.vaadin.sass.internal.handler.SCSSDocumentHandler; +import com.vaadin.sass.internal.handler.SCSSDocumentHandlerImpl; +import com.vaadin.sass.internal.parser.Parser; +import com.vaadin.sass.internal.resolver.FilesystemResolver; +import com.vaadin.sass.internal.tree.ImportNode; + +public class CompassImports extends AbstractTestBase { + + String scssOtherDirectory = "/scss/compass-test/compass-import.scss"; + String scssSameDirectory = "/scss/compass-test2/compass-import2.scss"; + String css = "/css/compass-import.css"; + + String compassPath = "/scss/compass-test2"; + + @Test + public void testParser() throws CSSException, IOException { + Parser parser = new Parser(); + SCSSDocumentHandler handler = new SCSSDocumentHandlerImpl(); + parser.setDocumentHandler(handler); + parser.parseStyleSheet(getClass().getResource(scssOtherDirectory) + .getPath()); + ScssStylesheet root = handler.getStyleSheet(); + ImportNode importVariableNode = (ImportNode) root.getChildren().get(0); + Assert.assertEquals("compass", importVariableNode.getUri()); + Assert.assertFalse(importVariableNode.isPureCssImport()); + } + + @Test + public void testCompiler() throws Exception { + testCompiler(scssSameDirectory, css, null); + } + + @Test + public void testCompilerWithCustomPath() throws Exception { + File rootPath = new File(getClass().getResource(compassPath).toURI()); + + testCompiler(scssOtherDirectory, css, rootPath.getPath()); + } + + public void testCompiler(String scss, String css, String additionalPath) + throws Exception { + comparisonCss = getFileContent(css); + ScssStylesheet sheet = getStyleSheet(scss); + Assert.assertNotNull(sheet); + sheet.addResolver(new FilesystemResolver(additionalPath)); + + sheet.compile(); + parsedScss = sheet.toString(); + Assert.assertEquals("Original CSS and parsed CSS do not match", + comparisonCss, parsedScss); + } +} diff --git a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/SassLangTests.java b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/SassLangTests.java index 4b8aada524..a8c9e80a3a 100644 --- a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/SassLangTests.java +++ b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/SassLangTests.java @@ -15,6 +15,7 @@ */ package com.vaadin.sass.testcases.scss; +import java.io.IOException; import java.net.URISyntaxException; import java.net.URL; import java.util.Collection; @@ -42,7 +43,7 @@ public class SassLangTests extends AbstractDirectoryScanningSassTests { @TestFactory public static Collection<String> getScssResourceNames() - throws URISyntaxException { + throws URISyntaxException, IOException { return getScssResourceNames(getResourceURLInternal("")); } diff --git a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/SassLangTestsBroken.java b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/SassLangTestsBroken.java index 6b812a6940..0656565c20 100644 --- a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/SassLangTestsBroken.java +++ b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/SassLangTestsBroken.java @@ -15,6 +15,7 @@ */ package com.vaadin.sass.testcases.scss; +import java.io.IOException; import java.net.URISyntaxException; import java.net.URL; import java.util.Collection; @@ -45,7 +46,7 @@ public class SassLangTestsBroken extends AbstractDirectoryScanningSassTests { @TestFactory public static Collection<String> getScssResourceNames() - throws URISyntaxException { + throws URISyntaxException, IOException { return getScssResourceNames(getResourceURLInternal("")); } diff --git a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/W3ConformanceTests.java b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/W3ConformanceTests.java new file mode 100644 index 0000000000..8dbc6345d6 --- /dev/null +++ b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/W3ConformanceTests.java @@ -0,0 +1,236 @@ +/* + * Copyright 2000-2013 Vaadin Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ +package com.vaadin.sass.testcases.scss; + +import java.io.File; +import java.io.IOException; +import java.io.PrintStream; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.util.ArrayList; +import java.util.Collection; +import java.util.LinkedHashSet; +import java.util.List; + +import org.apache.commons.io.FilenameUtils; +import org.apache.commons.io.IOUtils; +import org.jsoup.Jsoup; +import org.jsoup.nodes.Document; +import org.jsoup.nodes.Element; +import org.jsoup.select.Elements; +import org.junit.runner.RunWith; + +import com.vaadin.sass.testcases.scss.SassTestRunner.TestFactory; + +@RunWith(SassTestRunner.class) +public class W3ConformanceTests extends AbstractDirectoryScanningSassTests { + + @Override + protected URL getResourceURL(String path) { + return getResourceURLInternal(path); + } + + private static URL getResourceURLInternal(String path) { + return AutomaticSassTests.class.getResource("/w3ctests" + path); + } + + @TestFactory + public static Collection<String> getScssResourceNames() + throws URISyntaxException, IOException { + return getScssResourceNames(getResourceURLInternal("")); + } + + @Override + protected File getCssFile(File scssFile) throws IOException { + /* + * We should really compare the result of unparse(parse(css)) to css, + * but the comparator routine is currently too primitive. + */ + // return scssFile; + + // no comparison step, just parse, in this test + return null; + } + + /* + * Download W3C conformance tests for CSS 2.1 and CSS 3 (selectors), + * extracts all CSS (style tags, inline styles, and linked stylesheets), + * then tries to parse them. Since each CSS is valid SCSS, the parser should + * accept them. As these are browser tests, some are intentionally + * malformed, and must be excluded from the test suite. + */ + + public static void main(String[] args) throws Exception { + if (args.length < 1) { + System.err.println("Target directory not provided"); + return; + } + File targetDir = new File(args[0]); + for (URI url : CSS21()) { + extractCSS(url, targetDir); + } + for (URI url : CSS3Selectors()) { + extractCSS(url, targetDir); + } + + } + + public static Collection<URI> CSS21() throws Exception { + /* + * Tests explicitly excluded are listed below---case by case motivation + * required! + */ + final String[] excludelist = new String[] { + // Unsupported character encoding UTF-16 + "http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-utf16-be-002.htm", + "http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-utf16-be-003.htm", + "http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-utf16-le-002.htm", + "http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-utf16-le-003.htm", + + // Font family name contains (Asian?) cryptoglyphs + "http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-010.htm", + "http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-011.htm", + "http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-015.htm", + + // Contains syntactically illegal CSS + "http://test.csswg.org/suites/css2.1/20110323/html4/uri-013.htm", + + // Missing semicolon on line 29 + "http://test.csswg.org/suites/css2.1/20110323/html4/z-index-020.htm", }; + + // Note: W3C test reference files also not included! + return scrapeIndexForTests( + "http://test.csswg.org/suites/css2.1/20110323/html4/reftest-toc.html", + ".*[0-9][0-9][0-9][a-z]?\\.htm", Integer.MAX_VALUE, + new LinkedHashSet<URI>() { + { + for (String s : excludelist) { + add(new URI(s)); + } + } + }); + } + + public static Collection<URI> CSS3Selectors() throws Exception { + /* + * Tests explicitly excluded are listed below---case by case motivation + * required! + */ + final String[] excludelist = new String[] { + + // Probable bug/limitation (filed as #12834) + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-73.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-73b.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-74.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-74b.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-75.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-75b.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-76.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-76b.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-83.html", + + // Invalid CSS, although sass-lang compiler accepts (see #12835) + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-154.html", + + // Invalid CSS? sass-lang compiler fails + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-157.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-158.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-183.html", }; + + return scrapeIndexForTests( + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/", + "css3-.*\\.html", Integer.MAX_VALUE, new LinkedHashSet<URI>() { + { + for (String s : excludelist) { + add(new URI(s)); + } + } + }); + } + + /* + * Loads up to maxTest tests, excluding any URL in excludeUrls. + */ + protected static Collection<URI> scrapeIndexForTests(String url, + String regexp, int maxTests, Collection<URI> excludeUrls) + throws Exception { + + URI baseUrl = new URI(url); + Document doc = Jsoup.connect(url).timeout(10000).get(); + Elements elems = doc.select(String.format("a[href~=%s]", regexp)); + LinkedHashSet<URI> tests = new LinkedHashSet<URI>(); + for (Element e : elems) { + URI testUrl = new URI(e.attr("href")); + if (!testUrl.isAbsolute()) { + testUrl = baseUrl.resolve(testUrl); + } + if (tests.size() < maxTests) { + if (!excludeUrls.contains(testUrl)) { + tests.add(testUrl); + } + } else { + break; + } + } + + return tests; + } + + public static void extractCSS(final URI url, File targetdir) + throws Exception { + /* + * For each test URL: 1) extract <style> tag contents 2) extract from + * <link rel="stylesheet"> files 3) extract inline style attributes from + * all elements and wrap the result in .style {} + */ + + Document doc = Jsoup.connect(url.toString()).timeout(20000).get(); + + List<String> tests = new ArrayList<String>(); + + for (Element e : doc.select("style[type=text/css]")) { + tests.add(e.data()); + } + + for (Element e : doc + .select("link[rel=stylesheet][href][type=text/css]")) { + URI cssUri = new URI(e.attr("href")); + if (!cssUri.isAbsolute()) { + cssUri = url.resolve(cssUri); + } + String encoding = doc.outputSettings().charset().name(); + tests.add(IOUtils.toString(cssUri, encoding)); + } + + for (Element e : doc.select("*[style]")) { + tests.add(String.format(".style { %s }", e.attr("style"))); + } + + for (final String test : tests) { + targetdir.mkdirs(); + String logfile = String.format("%s.%d.scss", + FilenameUtils.getBaseName(url.toString()), + tests.indexOf(test)); + PrintStream dataLogger = new PrintStream(new File(targetdir, + logfile)); + + dataLogger.println("/* Source: " + url + " */"); + dataLogger.println(test); + + } + } +} |