Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(60)

Side by Side Diff: frog/leg/ssa/builder.dart

Issue 9190038: Handle escapes in string literals. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Add dependency on characters.dart to mini_parser.dart. Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 class Interceptors { 5 class Interceptors {
6 Compiler compiler; 6 Compiler compiler;
7 Interceptors(Compiler this.compiler); 7 Interceptors(Compiler this.compiler);
8 8
9 SourceString mapOperatorToMethodName(Operator op) { 9 SourceString mapOperatorToMethodName(Operator op) {
10 String name = op.source.stringValue; 10 String name = op.source.stringValue;
(...skipping 1134 matching lines...) Expand 10 before | Expand all | Expand 10 after
1145 1145
1146 void visitLiteralDouble(LiteralDouble node) { 1146 void visitLiteralDouble(LiteralDouble node) {
1147 push(new HLiteral(node.value, HType.DOUBLE)); 1147 push(new HLiteral(node.value, HType.DOUBLE));
1148 } 1148 }
1149 1149
1150 void visitLiteralBool(LiteralBool node) { 1150 void visitLiteralBool(LiteralBool node) {
1151 push(new HLiteral(node.value, HType.BOOLEAN)); 1151 push(new HLiteral(node.value, HType.BOOLEAN));
1152 } 1152 }
1153 1153
1154 void visitLiteralString(LiteralString node) { 1154 void visitLiteralString(LiteralString node) {
1155 if (node.value.stringValue[0] == '@') {
1156 compiler.unimplemented("SsaBuilder: raw strings", node: node);
1157 }
1158 push(new HLiteral(new QuotedString.explicit(node.value), HType.STRING)); 1155 push(new HLiteral(new QuotedString.explicit(node.value), HType.STRING));
1159 } 1156 }
1160 1157
1161 void visitLiteralNull(LiteralNull node) { 1158 void visitLiteralNull(LiteralNull node) {
1162 push(new HLiteral(null, HType.UNKNOWN)); 1159 push(new HLiteral(null, HType.UNKNOWN));
1163 } 1160 }
1164 1161
1165 visitNodeList(NodeList node) { 1162 visitNodeList(NodeList node) {
1166 for (Link<Node> link = node.nodes; !link.isEmpty(); link = link.tail) { 1163 for (Link<Node> link = node.nodes; !link.isEmpty(); link = link.tail) {
1167 visit(link.head); 1164 visit(link.head);
(...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after
1419 } 1416 }
1420 1417
1421 visitCatchBlock(CatchBlock node) { 1418 visitCatchBlock(CatchBlock node) {
1422 compiler.unimplemented('SsaBuilder.visitCatchBlock', node: node); 1419 compiler.unimplemented('SsaBuilder.visitCatchBlock', node: node);
1423 } 1420 }
1424 1421
1425 visitTypedef(Typedef node) { 1422 visitTypedef(Typedef node) {
1426 compiler.unimplemented('SsaBuilder.visitTypedef', node: node); 1423 compiler.unimplemented('SsaBuilder.visitTypedef', node: node);
1427 } 1424 }
1428 } 1425 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698