Index: packages/csslib/lib/src/tree.dart |
diff --git a/packages/csslib/lib/src/tree.dart b/packages/csslib/lib/src/tree.dart |
index 5dad435b48467053e18de2c236227ace717117fb..ba8370e96b1b1a65acb8fcca5de95fb3a2d047ac 100644 |
--- a/packages/csslib/lib/src/tree.dart |
+++ b/packages/csslib/lib/src/tree.dart |
@@ -44,6 +44,21 @@ class Negation extends TreeNode { |
String get name => 'not'; |
} |
+// calc(...) |
+// TODO(terry): Hack to handle calc however the expressions should be fully |
+// parsed and in the AST. |
+class CalcTerm extends LiteralTerm { |
+ final LiteralTerm expr; |
+ |
+ CalcTerm(var value, String t, this.expr, SourceSpan span) |
+ : super(value, t, span); |
+ |
+ CalcTerm clone() => new CalcTerm(value, text, expr.clone(), span); |
+ visit(VisitorBase visitor) => visitor.visitCalcTerm(this); |
+ |
+ String toString() => "$text($expr)"; |
+} |
+ |
// /* .... */ |
class CssComment extends TreeNode { |
final String comment; |
@@ -197,6 +212,7 @@ class AttributeSelector extends SimpleSelector { |
case TokenKind.NO_MATCH: |
return ''; |
} |
+ return null; |
} |
// Return the TokenKind for operator used by visitAttributeSelector. |
@@ -215,6 +231,7 @@ class AttributeSelector extends SimpleSelector { |
case TokenKind.SUBSTRING_MATCH: |
return 'SUBSTRING_MATCH'; |
} |
+ return null; |
} |
String valueToString() { |
@@ -572,6 +589,7 @@ class KeyFrameDirective extends Directive { |
case TokenKind.DIRECTIVE_O_KEYFRAMES: |
return '@-o-keyframes'; |
} |
+ return null; |
} |
KeyFrameDirective clone() { |
@@ -676,7 +694,7 @@ class MixinDefinition extends Directive { |
/** Support a Sass @mixin. See http://sass-lang.com for description. */ |
class MixinRulesetDirective extends MixinDefinition { |
- final List<RuleSet> rulesets; |
+ final List rulesets; |
MixinRulesetDirective(String name, List<VarDefinitionDirective> args, |
bool varArgs, this.rulesets, SourceSpan span) |