| OLD | NEW |
| 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 |
| 3 // BSD-style license that can be found in the LICENSE file. |
| 4 |
| 1 library dart_tree_printer; | 5 library dart_tree_printer; |
| 2 | 6 |
| 3 import 'dart_printer.dart'; | 7 import 'dart_printer.dart'; |
| 4 import '../tree/tree.dart' as tree; | 8 import '../tree/tree.dart' as tree; |
| 5 import '../scanner/scannerlib.dart'; | 9 import '../scanner/scannerlib.dart'; |
| 6 import '../util/util.dart'; | 10 import '../util/util.dart'; |
| 7 import '../dart2jslib.dart' as dart2js; | 11 import '../dart2jslib.dart' as dart2js; |
| 8 import '../util/characters.dart' as characters; | 12 import '../util/characters.dart' as characters; |
| 9 import '../elements/elements.dart' as elements; | 13 import '../elements/elements.dart' as elements; |
| 10 import '../dart_types.dart' as types; | 14 import '../dart_types.dart' as types; |
| (...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 297 makeExp(exp.object, PRIMARY, beginStmt: beginStmt), | 301 makeExp(exp.object, PRIMARY, beginStmt: beginStmt), |
| 298 makeIdentifier(exp.methodName), | 302 makeIdentifier(exp.methodName), |
| 299 argList(exp.arguments.map(makeArgument))); | 303 argList(exp.arguments.map(makeArgument))); |
| 300 } else if (exp is CallNew) { | 304 } else if (exp is CallNew) { |
| 301 precedence = CALLEE; | 305 precedence = CALLEE; |
| 302 tree.Node selector = makeName(exp.type.name); | 306 tree.Node selector = makeName(exp.type.name); |
| 303 if (exp.type.typeArguments.length > 0) { | 307 if (exp.type.typeArguments.length > 0) { |
| 304 selector = new tree.TypeAnnotation( | 308 selector = new tree.TypeAnnotation( |
| 305 selector, | 309 selector, |
| 306 typeArgList(exp.type.typeArguments.map(makeType))); | 310 typeArgList(exp.type.typeArguments.map(makeType))); |
| 311 setType(selector, exp.dartType, exp); |
| 307 } | 312 } |
| 308 if (exp.constructorName != null) { | 313 if (exp.constructorName != null) { |
| 309 selector = new tree.Send( | 314 selector = new tree.Send( |
| 310 selector, | 315 selector, |
| 311 makeIdentifier(exp.constructorName)); | 316 makeIdentifier(exp.constructorName)); |
| 312 } | 317 } |
| 313 tree.Send send = new tree.Send( | 318 tree.Send send = new tree.Send( |
| 314 null, | 319 null, |
| 315 selector, | 320 selector, |
| 316 argList(exp.arguments.map(makeArgument))); | 321 argList(exp.arguments.map(makeArgument))); |
| 317 result = new tree.NewExpression( | 322 result = new tree.NewExpression( |
| 318 exp.isConst ? constToken : newToken, | 323 exp.isConst ? constToken : newToken, |
| 319 send); | 324 send); |
| 325 setType(result, exp.dartType, exp); |
| 326 setElement(send, exp.constructor, exp); |
| 320 } else if (exp is CallStatic) { | 327 } else if (exp is CallStatic) { |
| 321 precedence = CALLEE; | 328 precedence = CALLEE; |
| 322 result = new tree.Send( | 329 result = new tree.Send( |
| 323 makeName(exp.className), | 330 makeName(exp.className), |
| 324 makeIdentifier(exp.methodName), | 331 makeIdentifier(exp.methodName), |
| 325 argList(exp.arguments.map(makeArgument))); | 332 argList(exp.arguments.map(makeArgument))); |
| 326 setElement(result, exp.element, exp); | 333 setElement(result, exp.element, exp); |
| 327 } else if (exp is Conditional) { | 334 } else if (exp is Conditional) { |
| 328 precedence = CONDITIONAL; | 335 precedence = CONDITIONAL; |
| 329 result = new tree.Conditional( | 336 result = new tree.Conditional( |
| (...skipping 546 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 876 printStringChunk(chunk.previous), | 883 printStringChunk(chunk.previous), |
| 877 node); | 884 node); |
| 878 } else { | 885 } else { |
| 879 return node; | 886 return node; |
| 880 } | 887 } |
| 881 } | 888 } |
| 882 return printStringChunk(output.chunk); | 889 return printStringChunk(output.chunk); |
| 883 } | 890 } |
| 884 | 891 |
| 885 } | 892 } |
| OLD | NEW |