| OLD | NEW |
| 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 statement_rewriter; | 5 library statement_rewriter; |
| 6 | 6 |
| 7 import 'tree_ir_nodes.dart'; | 7 import 'tree_ir_nodes.dart'; |
| 8 | 8 |
| 9 /** | 9 /** |
| 10 * Performs the following transformations on the tree: | 10 * Performs the following transformations on the tree: |
| (...skipping 339 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 350 Expression visitLiteralList(LiteralList node) { | 350 Expression visitLiteralList(LiteralList node) { |
| 351 // Process values right-to-left, the opposite of evaluation order. | 351 // Process values right-to-left, the opposite of evaluation order. |
| 352 for (int i = node.values.length - 1; i >= 0; --i) { | 352 for (int i = node.values.length - 1; i >= 0; --i) { |
| 353 node.values[i] = visitExpression(node.values[i]); | 353 node.values[i] = visitExpression(node.values[i]); |
| 354 } | 354 } |
| 355 return node; | 355 return node; |
| 356 } | 356 } |
| 357 | 357 |
| 358 Expression visitLiteralMap(LiteralMap node) { | 358 Expression visitLiteralMap(LiteralMap node) { |
| 359 // Process arguments right-to-left, the opposite of evaluation order. | 359 // Process arguments right-to-left, the opposite of evaluation order. |
| 360 for (int i = node.values.length - 1; i >= 0; --i) { | 360 for (LiteralMapEntry entry in node.entries.reversed) { |
| 361 node.values[i] = visitExpression(node.values[i]); | 361 entry.value = visitExpression(entry.value); |
| 362 node.keys[i] = visitExpression(node.keys[i]); | 362 entry.key = visitExpression(entry.key); |
| 363 } | 363 } |
| 364 return node; | 364 return node; |
| 365 } | 365 } |
| 366 | 366 |
| 367 Expression visitTypeOperator(TypeOperator node) { | 367 Expression visitTypeOperator(TypeOperator node) { |
| 368 node.receiver = visitExpression(node.receiver); | 368 node.receiver = visitExpression(node.receiver); |
| 369 return node; | 369 return node; |
| 370 } | 370 } |
| 371 | 371 |
| 372 Statement visitExpressionStatement(ExpressionStatement node) { | 372 Statement visitExpressionStatement(ExpressionStatement node) { |
| (...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 544 } | 544 } |
| 545 | 545 |
| 546 Expression makeCondition(Expression e, bool polarity) { | 546 Expression makeCondition(Expression e, bool polarity) { |
| 547 return polarity ? e : new Not(e); | 547 return polarity ? e : new Not(e); |
| 548 } | 548 } |
| 549 | 549 |
| 550 Statement getBranch(If node, bool polarity) { | 550 Statement getBranch(If node, bool polarity) { |
| 551 return polarity ? node.thenStatement : node.elseStatement; | 551 return polarity ? node.thenStatement : node.elseStatement; |
| 552 } | 552 } |
| 553 } | 553 } |
| OLD | NEW |