Fix latest lints (#128)

diff --git a/lib/parser.dart b/lib/parser.dart
index c516808..2e62271 100644
--- a/lib/parser.dart
+++ b/lib/parser.dart
@@ -2257,11 +2257,11 @@
         return _parseHex(' ${processTerm().text}', _makeSpan(start));
       case TokenKind.INTEGER:
         t = _next();
-        value = int.parse('${unary}${t.text}');
+        value = int.parse('$unary${t.text}');
         break;
       case TokenKind.DOUBLE:
         t = _next();
-        value = double.parse('${unary}${t.text}');
+        value = double.parse('$unary${t.text}');
         break;
       case TokenKind.SINGLE_QUOTE:
         value = processQuotedString(false);
@@ -2331,8 +2331,8 @@
           if (isChecked) {
             var propName = nameValue.name;
             var errMsg = TokenKind.isPredefinedName(propName)
-                ? 'Improper use of property value ${propName}'
-                : 'Unknown property value ${propName}';
+                ? 'Improper use of property value $propName'
+                : 'Unknown property value $propName';
             _warning(errMsg, _makeSpan(start));
           }
           return LiteralTerm(nameValue, nameValue.name, _makeSpan(start));
diff --git a/lib/src/analyzer.dart b/lib/src/analyzer.dart
index 6899796..6d33e25 100644
--- a/lib/src/analyzer.dart
+++ b/lib/src/analyzer.dart
@@ -50,7 +50,7 @@
     // Expand any @extend.
     _styleSheets.forEach((styleSheet) {
       var allExtends = AllExtends()..visitStyleSheet(styleSheet);
-      InheritExtends(_messages, allExtends)..visitStyleSheet(styleSheet);
+      InheritExtends(_messages, allExtends).visitStyleSheet(styleSheet);
     });
   }
 }
@@ -872,7 +872,7 @@
 /// @include.
 class MixinsAndIncludes extends Visitor {
   static void remove(StyleSheet styleSheet) {
-    MixinsAndIncludes()..visitStyleSheet(styleSheet);
+    MixinsAndIncludes().visitStyleSheet(styleSheet);
   }
 
   bool _nodesToRemove(node) =>
diff --git a/lib/src/tree_base.dart b/lib/src/tree_base.dart
index dc7aa76..db3a56c 100644
--- a/lib/src/tree_base.dart
+++ b/lib/src/tree_base.dart
@@ -69,7 +69,7 @@
   }
 
   void writeNode(String label, TreeNode? node) {
-    write('${label}: ');
+    write('$label: ');
     depth += 1;
     if (node != null) {
       node.visit(printer!);
@@ -81,11 +81,11 @@
 
   void writeValue(String label, value) {
     var v = toValue(value);
-    writeln('${label}: ${v}');
+    writeln('$label: $v');
   }
 
   void writeNodeList(String label, List<TreeNode>? list) {
-    writeln('${label} [');
+    writeln('$label [');
     if (list != null) {
       depth += 1;
       for (var node in list) {
diff --git a/lib/src/tree_printer.dart b/lib/src/tree_printer.dart
index 72f1223..0d18400 100644
--- a/lib/src/tree_printer.dart
+++ b/lib/src/tree_printer.dart
@@ -9,7 +9,7 @@
 /// Helper function to dump the CSS AST.
 String treeToDebugString(StyleSheet styleSheet, [bool useSpan = false]) {
   var to = TreeOutput();
-  _TreePrinter(to, useSpan)..visitTree(styleSheet);
+  _TreePrinter(to, useSpan).visitTree(styleSheet);
   return to.toString();
 }
 
@@ -392,7 +392,7 @@
     output.depth++;
     super.visitAttributeSelector(node);
     var tokenStr = node.matchOperatorAsTokenString();
-    output.writeValue('operator', '${node.matchOperator()} (${tokenStr})');
+    output.writeValue('operator', '${node.matchOperator()} ($tokenStr)');
     output.writeValue('value', node.valueToString());
     output.depth--;
   }
diff --git a/test/testing.dart b/test/testing.dart
index 2094420..e08b305 100644
--- a/test/testing.dart
+++ b/test/testing.dart
@@ -74,7 +74,7 @@
 
 /// Walks the style sheet tree does nothing; insures the basic walker works.
 void walkTree(StyleSheet ss) {
-  _cssVisitor..visitTree(ss);
+  _cssVisitor.visitTree(ss);
 }
 
 String dumpTree(StyleSheet ss) => treeToDebugString(ss);