Index: lib/src/analyzer.dart |
diff --git a/lib/src/analyzer.dart b/lib/src/analyzer.dart |
index da1a9fac552092970148f3f78c400d9d5d947fc5..1341bc20548e1726c3ced2eb708cf29fa3c664f6 100644 |
--- a/lib/src/analyzer.dart |
+++ b/lib/src/analyzer.dart |
@@ -4,7 +4,6 @@ |
part of csslib.parser; |
- |
// TODO(terry): Add optimizing phase to remove duplicated selectors in the same |
// selector group (e.g., .btn, .btn { color: red; }). Also, look |
// at simplifying selectors expressions too (much harder). |
@@ -34,12 +33,12 @@ class Analyzer { |
// possibly combine in one walk. |
void run() { |
// Expand top-level @include. |
- _styleSheets.forEach((styleSheet) => |
- TopLevelIncludes.expand(_messages, _styleSheets)); |
+ _styleSheets.forEach( |
+ (styleSheet) => TopLevelIncludes.expand(_messages, _styleSheets)); |
// Expand @include in declarations. |
- _styleSheets.forEach((styleSheet) => |
- DeclarationIncludes.expand(_messages, _styleSheets)); |
+ _styleSheets.forEach( |
+ (styleSheet) => DeclarationIncludes.expand(_messages, _styleSheets)); |
// Remove all @mixin and @include |
_styleSheets.forEach((styleSheet) => MixinsAndIncludes.remove(styleSheet)); |
@@ -47,13 +46,13 @@ class Analyzer { |
// Expand any nested selectors using selector desendant combinator to |
// signal CSS inheritance notation. |
_styleSheets.forEach((styleSheet) => new ExpandNestedSelectors() |
- ..visitStyleSheet(styleSheet) |
- ..flatten(styleSheet)); |
+ ..visitStyleSheet(styleSheet) |
+ ..flatten(styleSheet)); |
// Expand any @extend. |
_styleSheets.forEach((styleSheet) { |
- var allExtends = new AllExtends()..visitStyleSheet(styleSheet); |
- new InheritExtends(_messages, allExtends)..visitStyleSheet(styleSheet); |
+ var allExtends = new AllExtends()..visitStyleSheet(styleSheet); |
+ new InheritExtends(_messages, allExtends)..visitStyleSheet(styleSheet); |
}); |
} |
} |
@@ -215,8 +214,8 @@ class ExpandNestedSelectors extends Visitor { |
_parentRuleSet = oldParent; |
// Remove nested rules; they're all flatten and in the _expandedRuleSets. |
- node.declarationGroup.declarations.removeWhere((declaration) => |
- declaration is RuleSet); |
+ node.declarationGroup.declarations |
+ .removeWhere((declaration) => declaration is RuleSet); |
_nestedSelectorGroup = oldNestedSelectorGroups; |
@@ -305,8 +304,8 @@ class ExpandNestedSelectors extends Visitor { |
var newSequences = []; |
var first = sequences.first; |
- newSequences.add(new SimpleSelectorSequence(first.simpleSelector, |
- first.span, TokenKind.COMBINATOR_DESCENDANT)); |
+ newSequences.add(new SimpleSelectorSequence( |
+ first.simpleSelector, first.span, TokenKind.COMBINATOR_DESCENDANT)); |
newSequences.addAll(sequences.skip(1)); |
return newSequences; |
@@ -407,8 +406,8 @@ class _MediaRulesReplacer extends Visitor { |
* Look for the [ruleSet] inside of an @media directive; if found then replace |
* with the [newRules]. If [ruleSet] is found and replaced return true. |
*/ |
- static bool replace(StyleSheet styleSheet, RuleSet ruleSet, |
- List<RuleSet>newRules) { |
+ static bool replace( |
+ StyleSheet styleSheet, RuleSet ruleSet, List<RuleSet> newRules) { |
var visitor = new _MediaRulesReplacer(ruleSet, newRules); |
visitor.visitStyleSheet(styleSheet); |
return visitor._foundAndReplaced; |
@@ -459,8 +458,8 @@ class TopLevelIncludes extends Visitor { |
if (map.containsKey(node.name)) { |
var mixinDef = map[node.name]; |
if (mixinDef is MixinRulesetDirective) { |
- _TopLevelIncludeReplacer.replace(_messages, _styleSheet, node, |
- mixinDef.rulesets); |
+ _TopLevelIncludeReplacer.replace( |
+ _messages, _styleSheet, node, mixinDef.rulesets); |
} else if (currDef is MixinRulesetDirective && _anyRulesets(currDef)) { |
// currDef is MixinRulesetDirective |
MixinRulesetDirective mixinRuleset = currDef; |
@@ -519,7 +518,7 @@ class _TopLevelIncludeReplacer extends Visitor { |
* with the [newRules]. If [ruleSet] is found and replaced return true. |
*/ |
static bool replace(Messages messages, StyleSheet styleSheet, |
- IncludeDirective include, List<RuleSet>newRules) { |
+ IncludeDirective include, List<RuleSet> newRules) { |
var visitor = new _TopLevelIncludeReplacer(messages, include, newRules); |
visitor.visitStyleSheet(styleSheet); |
return visitor._foundAndReplaced; |
@@ -555,13 +554,12 @@ class _TopLevelIncludeReplacer extends Visitor { |
* can be an include in a declaration or an include directive (top-level). |
*/ |
int _findInclude(List list, var node) { |
- IncludeDirective matchNode = (node is IncludeMixinAtDeclaration) ? |
- node.include : node; |
+ IncludeDirective matchNode = |
+ (node is IncludeMixinAtDeclaration) ? node.include : node; |
var index = 0; |
for (var item in list) { |
- var includeNode = (item is IncludeMixinAtDeclaration) ? |
- item.include : item; |
+ var includeNode = (item is IncludeMixinAtDeclaration) ? item.include : item; |
if (includeNode == matchNode) return index; |
index++; |
} |
@@ -724,8 +722,8 @@ class DeclarationIncludes extends Visitor { |
rulesets.every((rule) => rule is IncludeDirective || rule is NoOp); |
CallMixin _createCallDeclMixin(MixinDefinition mixinDef) { |
- callMap.putIfAbsent(mixinDef.name, () => |
- callMap[mixinDef.name] = new CallMixin(mixinDef, varDefs)); |
+ callMap.putIfAbsent(mixinDef.name, |
+ () => callMap[mixinDef.name] = new CallMixin(mixinDef, varDefs)); |
return callMap[mixinDef.name]; |
} |
@@ -750,8 +748,8 @@ class DeclarationIncludes extends Visitor { |
if (!_allIncludes(mixinDef.rulesets) && currDeclGroup != null) { |
var index = _findInclude(currDeclGroup.declarations, node); |
if (index != -1) { |
- currDeclGroup.declarations.replaceRange(index, index + 1, |
- [new NoOp()]); |
+ currDeclGroup.declarations.replaceRange( |
+ index, index + 1, [new NoOp()]); |
} |
_messages.warning( |
"Using top-level mixin ${node.include.name} as a declaration", |
@@ -763,22 +761,22 @@ class DeclarationIncludes extends Visitor { |
var rulesets = []; |
if (origRulesets.every((ruleset) => ruleset is IncludeDirective)) { |
origRulesets.forEach((ruleset) { |
- rulesets.add(new IncludeMixinAtDeclaration(ruleset, |
- ruleset.span)); |
+ rulesets |
+ .add(new IncludeMixinAtDeclaration(ruleset, ruleset.span)); |
}); |
_IncludeReplacer.replace(_styleSheet, node, rulesets); |
} |
} |
} |
- if ( mixinDef.definedArgs.length > 0 && node.include.args.length > 0) { |
+ if (mixinDef.definedArgs.length > 0 && node.include.args.length > 0) { |
var callMixin = _createCallDeclMixin(mixinDef); |
mixinDef = callMixin.transform(node.include.args); |
} |
if (mixinDef is MixinDeclarationDirective) { |
- _IncludeReplacer.replace(_styleSheet, node, |
- mixinDef.declarations.declarations); |
+ _IncludeReplacer.replace( |
+ _styleSheet, node, mixinDef.declarations.declarations); |
} |
} else { |
_messages.warning("Undefined mixin ${node.include.name}", node.span); |
@@ -792,11 +790,11 @@ class DeclarationIncludes extends Visitor { |
var mixinDef = map[node.name]; |
if (currDef is MixinDeclarationDirective && |
mixinDef is MixinDeclarationDirective) { |
- _IncludeReplacer.replace(_styleSheet, node, |
- mixinDef.declarations.declarations); |
+ _IncludeReplacer.replace( |
+ _styleSheet, node, mixinDef.declarations.declarations); |
} else if (currDef is MixinDeclarationDirective) { |
- var decls = (currDef as MixinDeclarationDirective) |
- .declarations.declarations; |
+ var decls = |
+ (currDef as MixinDeclarationDirective).declarations.declarations; |
var index = _findInclude(decls, node); |
if (index != -1) { |
decls.replaceRange(index, index + 1, [new NoOp()]); |
@@ -835,7 +833,7 @@ class DeclarationIncludes extends Visitor { |
varDefs[node.definedName] = node; |
} |
super.visitVarDefinition(node); |
- } |
+ } |
void visitVarDefinitionDirective(VarDefinitionDirective node) { |
visitVarDefinition(node.def); |
@@ -852,8 +850,8 @@ class _IncludeReplacer extends Visitor { |
* Look for the [ruleSet] inside of a @media directive; if found then replace |
* with the [newRules]. |
*/ |
- static void replace(StyleSheet ss, var include, |
- List<Declaration> newDeclarations) { |
+ static void replace( |
+ StyleSheet ss, var include, List<Declaration> newDeclarations) { |
var visitor = new _IncludeReplacer(include, newDeclarations); |
visitor.visitStyleSheet(ss); |
} |
@@ -973,12 +971,14 @@ class InheritExtends extends Visitor { |
InheritExtends(this._messages, this._allExtends); |
void visitSelectorGroup(SelectorGroup node) { |
- for (var selectorsIndex = 0; selectorsIndex < node.selectors.length; |
+ for (var selectorsIndex = 0; |
+ selectorsIndex < node.selectors.length; |
selectorsIndex++) { |
var selectors = node.selectors[selectorsIndex]; |
var isLastNone = false; |
var selectorName = ""; |
- for (var index = 0; index < selectors.simpleSelectorSequences.length; |
+ for (var index = 0; |
+ index < selectors.simpleSelectorSequences.length; |
index++) { |
var simpleSeq = selectors.simpleSelectorSequences[index]; |
var namePart = simpleSeq.simpleSelector.toString(); |
@@ -1001,8 +1001,8 @@ class InheritExtends extends Visitor { |
newSelectors.simpleSelectorSequences[index].combinator; |
newSeq.simpleSelectorSequences[0].combinator = orgCombinator; |
- newSelectors.simpleSelectorSequences.replaceRange(index, |
- index + 1, newSeq.simpleSelectorSequences); |
+ newSelectors.simpleSelectorSequences.replaceRange( |
+ index, index + 1, newSeq.simpleSelectorSequences); |
node.selectors.add(newSelectors); |
} |
isLastNone = false; |