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

Side by Side Diff: pkg/compiler/lib/src/js_backend/codegen/codegen.dart

Issue 923013002: dart2dart: Implementation of simple try/catch. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 years, 10 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) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, 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 library code_generator; 5 library code_generator;
6 6
7 import 'glue.dart'; 7 import 'glue.dart';
8 8
9 import '../../tree_ir/tree_ir_nodes.dart' as tree_ir; 9 import '../../tree_ir/tree_ir_nodes.dart' as tree_ir;
10 import '../../js/js.dart' as js; 10 import '../../js/js.dart' as js;
(...skipping 471 matching lines...) Expand 10 before | Expand all | Expand 10 after
482 accumulator.add( 482 accumulator.add(
483 buildWhile(new js.LiteralBool(true), node.body, node.label, node)); 483 buildWhile(new js.LiteralBool(true), node.body, node.label, node));
484 } 484 }
485 485
486 @override 486 @override
487 void visitReturn(tree_ir.Return node) { 487 void visitReturn(tree_ir.Return node) {
488 accumulator.add(new js.Return(visitExpression(node.value))); 488 accumulator.add(new js.Return(visitExpression(node.value)));
489 } 489 }
490 490
491 @override 491 @override
492 void visitTryStatement(tree_ir.TryStatement node) {
493 // TODO(kmillikin): implement TryStatement.
494 return giveup(node);
495 }
496
497 @override
492 js.Expression visitFieldInitializer(tree_ir.FieldInitializer node) { 498 js.Expression visitFieldInitializer(tree_ir.FieldInitializer node) {
493 return giveup(node); 499 return giveup(node);
494 // TODO: implement FieldInitializer 500 // TODO: implement FieldInitializer
495 } 501 }
496 502
497 @override 503 @override
498 js.Expression visitSuperInitializer(tree_ir.SuperInitializer node) { 504 js.Expression visitSuperInitializer(tree_ir.SuperInitializer node) {
499 return giveup(node); 505 return giveup(node);
500 // TODO: implement SuperInitializer 506 // TODO: implement SuperInitializer
501 } 507 }
(...skipping 21 matching lines...) Expand all
523 void visitSetField(tree_ir.SetField node) { 529 void visitSetField(tree_ir.SetField node) {
524 js.PropertyAccess field = 530 js.PropertyAccess field =
525 new js.PropertyAccess.field( 531 new js.PropertyAccess.field(
526 visitExpression(node.object), 532 visitExpression(node.object),
527 glue.instanceFieldPropertyName(node.field)); 533 glue.instanceFieldPropertyName(node.field));
528 js.Assignment asn = new js.Assignment(field, visitExpression(node.value)); 534 js.Assignment asn = new js.Assignment(field, visitExpression(node.value));
529 accumulator.add(new js.ExpressionStatement(asn)); 535 accumulator.add(new js.ExpressionStatement(asn));
530 visitStatement(node.next); 536 visitStatement(node.next);
531 } 537 }
532 } 538 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698