]> source.dussan.org Git - vaadin-framework.git/commit
For @-directives, infer missing semicolon before closing brace (#12792)
authorjoheriks <joheriks@vaadin.com>
Wed, 27 Nov 2013 15:34:30 +0000 (17:34 +0200)
committerVaadin Code Review <review@vaadin.com>
Thu, 28 Nov 2013 07:59:15 +0000 (07:59 +0000)
commit37919d14b7509b1c8d8495a3e334d50a913bfe6f
tree4ff44578c4e22d98a07e79c2a778aa2b266c0021
parent1ac492e46b70de9314083492bd8e136e1c8398e3
For @-directives, infer missing semicolon before closing brace (#12792)

Parser now accepts the following (note missing semicolon after last
@extend-directive):

xyzzy {
  @extend foo ;
  @extend bar
}

As a consequence, moved 31 sasslang-cases from broken to fixed. Moved
two tests from fixed to broken (34, 95, previously passed accidentally)

Change-Id: I8968074abd79dec71be762ed926cc6f37fbcaa99
131 files changed:
theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandler.java
theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandlerImpl.java
theme-compiler/src/com/vaadin/sass/internal/parser/CharStream.java
theme-compiler/src/com/vaadin/sass/internal/parser/Parser.java
theme-compiler/src/com/vaadin/sass/internal/parser/Parser.jj
theme-compiler/src/com/vaadin/sass/internal/parser/Token.java
theme-compiler/src/com/vaadin/sass/internal/parser/TokenMgrError.java
theme-compiler/tests/resources/sasslang/css/106-test_pseudoclass_remains_at_end_of_selector.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/107-test_pseudoelement_goes_lefter_than_not.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/108-test_pseudoelement_goes_lefter_than_pseudoclass.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/109-test_pseudoelement_remains_at_end_of_selector.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/110-test_redundant_selector_elimination.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/112-test_target_with_child.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/2-test_basic.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/29-test_extend_does_not_warn_when_one_extension_fails_but_others_dont.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/33-test_extend_redundancy_elimination_never_eliminates_base_selector.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/333-test_empty_content.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.css [deleted file]
theme-compiler/tests/resources/sasslang/css/35-test_extend_redundancy_elimination_when_it_would_reduce_specificity.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/368-test_mixins_with_args.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/420-test_warn_directive.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/55-test_long_extendee.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/63-test_multiple_extendees.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/65-test_multiple_extends_with_multiple_extenders_and_single_target.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/66-test_multiple_extends_with_single_extender_and_single_target.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/67-test_multiple_targets.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/7-test_combinator_unification_angle_sibling.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/70-test_nested_extender.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/80-test_nested_extender_merges_with_same_selector.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/81-test_nested_extender_runs_unification.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/85-test_nested_extender_with_child_selector.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/86-test_nested_extender_with_child_selector_merges_with_same_selector.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/88-test_nested_extender_with_early_child_selectors_doesnt_subseq_them.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/90-test_nested_extender_with_sibling_selector.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/91-test_nested_selector_with_child_selector_hack_extendee.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.css [deleted file]
theme-compiler/tests/resources/sasslang/css/96-test_nested_target.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/css/98-test_not_remains_at_end_of_selector.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/106-test_pseudoclass_remains_at_end_of_selector.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/107-test_pseudoelement_goes_lefter_than_not.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/108-test_pseudoelement_goes_lefter_than_pseudoclass.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/109-test_pseudoelement_remains_at_end_of_selector.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/110-test_redundant_selector_elimination.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/112-test_target_with_child.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/2-test_basic.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/29-test_extend_does_not_warn_when_one_extension_fails_but_others_dont.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/33-test_extend_redundancy_elimination_never_eliminates_base_selector.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/333-test_empty_content.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.scss [deleted file]
theme-compiler/tests/resources/sasslang/scss/35-test_extend_redundancy_elimination_when_it_would_reduce_specificity.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/368-test_mixins_with_args.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/420-test_warn_directive.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/55-test_long_extendee.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/63-test_multiple_extendees.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/65-test_multiple_extends_with_multiple_extenders_and_single_target.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/66-test_multiple_extends_with_single_extender_and_single_target.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/67-test_multiple_targets.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/7-test_combinator_unification_angle_sibling.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/70-test_nested_extender.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/80-test_nested_extender_merges_with_same_selector.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/81-test_nested_extender_runs_unification.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/85-test_nested_extender_with_child_selector.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/86-test_nested_extender_with_child_selector_merges_with_same_selector.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/88-test_nested_extender_with_early_child_selectors_doesnt_subseq_them.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/90-test_nested_extender_with_sibling_selector.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/91-test_nested_selector_with_child_selector_hack_extendee.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.scss [deleted file]
theme-compiler/tests/resources/sasslang/scss/96-test_nested_target.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslang/scss/98-test_not_remains_at_end_of_selector.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslangbroken/css/106-test_pseudoclass_remains_at_end_of_selector.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/107-test_pseudoelement_goes_lefter_than_not.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/108-test_pseudoelement_goes_lefter_than_pseudoclass.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/109-test_pseudoelement_remains_at_end_of_selector.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/110-test_redundant_selector_elimination.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/112-test_target_with_child.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/2-test_basic.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/29-test_extend_does_not_warn_when_one_extension_fails_but_others_dont.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/33-test_extend_redundancy_elimination_never_eliminates_base_selector.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/333-test_empty_content.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslangbroken/css/35-test_extend_redundancy_elimination_when_it_would_reduce_specificity.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/368-test_mixins_with_args.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/420-test_warn_directive.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/55-test_long_extendee.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/63-test_multiple_extendees.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/65-test_multiple_extends_with_multiple_extenders_and_single_target.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/66-test_multiple_extends_with_single_extender_and_single_target.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/67-test_multiple_targets.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/7-test_combinator_unification_angle_sibling.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/70-test_nested_extender.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/80-test_nested_extender_merges_with_same_selector.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/81-test_nested_extender_runs_unification.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/85-test_nested_extender_with_child_selector.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/86-test_nested_extender_with_child_selector_merges_with_same_selector.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/88-test_nested_extender_with_early_child_selectors_doesnt_subseq_them.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/90-test_nested_extender_with_sibling_selector.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/91-test_nested_selector_with_child_selector_hack_extendee.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.css [new file with mode: 0644]
theme-compiler/tests/resources/sasslangbroken/css/96-test_nested_target.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/css/98-test_not_remains_at_end_of_selector.css [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/106-test_pseudoclass_remains_at_end_of_selector.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/107-test_pseudoelement_goes_lefter_than_not.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/108-test_pseudoelement_goes_lefter_than_pseudoclass.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/109-test_pseudoelement_remains_at_end_of_selector.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/110-test_redundant_selector_elimination.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/112-test_target_with_child.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/2-test_basic.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/29-test_extend_does_not_warn_when_one_extension_fails_but_others_dont.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/33-test_extend_redundancy_elimination_never_eliminates_base_selector.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/333-test_empty_content.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslangbroken/scss/35-test_extend_redundancy_elimination_when_it_would_reduce_specificity.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/368-test_mixins_with_args.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/420-test_warn_directive.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/55-test_long_extendee.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/63-test_multiple_extendees.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/65-test_multiple_extends_with_multiple_extenders_and_single_target.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/66-test_multiple_extends_with_single_extender_and_single_target.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/67-test_multiple_targets.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/7-test_combinator_unification_angle_sibling.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/70-test_nested_extender.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/80-test_nested_extender_merges_with_same_selector.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/81-test_nested_extender_runs_unification.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/85-test_nested_extender_with_child_selector.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/86-test_nested_extender_with_child_selector_merges_with_same_selector.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/88-test_nested_extender_with_early_child_selectors_doesnt_subseq_them.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/90-test_nested_extender_with_sibling_selector.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/91-test_nested_selector_with_child_selector_hack_extendee.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.scss [new file with mode: 0644]
theme-compiler/tests/resources/sasslangbroken/scss/96-test_nested_target.scss [deleted file]
theme-compiler/tests/resources/sasslangbroken/scss/98-test_not_remains_at_end_of_selector.scss [deleted file]