| Index: pkg/js_ast/lib/src/template.dart
|
| diff --git a/pkg/js_ast/lib/src/template.dart b/pkg/js_ast/lib/src/template.dart
|
| index e7aa86349138ef90b14c60f729f5dfb6da4d4d33..c3dca1979305d90083a67b65ca9b2a6f4ab40b6a 100644
|
| --- a/pkg/js_ast/lib/src/template.dart
|
| +++ b/pkg/js_ast/lib/src/template.dart
|
| @@ -654,6 +654,13 @@ class InstantiatorGeneratorVisitor implements NodeVisitor<Instantiator> {
|
| };
|
| }
|
|
|
| + Instantiator visitDeferredExpression(DeferredExpression node) => same(node);
|
| +
|
| + Instantiator visitDeferredNumber(DeferredNumber node) => same(node);
|
| +
|
| + Instantiator visitDeferredString(DeferredString node) =>
|
| + (arguments) => node;
|
| +
|
| Instantiator visitLiteralBool(LiteralBool node) =>
|
| (arguments) => new LiteralBool(node.value);
|
|
|
| @@ -666,6 +673,18 @@ class InstantiatorGeneratorVisitor implements NodeVisitor<Instantiator> {
|
| Instantiator visitLiteralNull(LiteralNull node) =>
|
| (arguments) => new LiteralNull();
|
|
|
| + Instantiator visitStringConcatenation(StringConcatenation node) {
|
| + List<Instantiator> partMakers = node.parts
|
| + .map(visit)
|
| + .toList(growable: false);
|
| + return (arguments) {
|
| + List<Literal> parts = partMakers
|
| + .map((Instantiator instantiator) => instantiator(arguments))
|
| + .toList(growable: false);
|
| + return new StringConcatenation(parts);
|
| + };
|
| + }
|
| +
|
| Instantiator visitArrayInitializer(ArrayInitializer node) {
|
| // TODO(sra): Implement splicing?
|
| List<Instantiator> elementMakers = node.elements
|
|
|