| 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 analyzer2dart.cps_generator; | 5 library analyzer2dart.cps_generator; | 
| 6 | 6 | 
| 7 import 'package:analyzer/analyzer.dart'; | 7 import 'package:analyzer/analyzer.dart'; | 
| 8 | 8 | 
| 9 import 'package:compiler/src/dart_types.dart' as dart2js; | 9 import 'package:compiler/src/dart_types.dart' as dart2js; | 
| 10 import 'package:compiler/src/elements/elements.dart' as dart2js; | 10 import 'package:compiler/src/elements/elements.dart' as dart2js; | 
| (...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 405   } | 405   } | 
| 406 | 406 | 
| 407   @override | 407   @override | 
| 408   ir.Node visitStaticFieldAccess(AstNode node, AccessSemantics semantics) { | 408   ir.Node visitStaticFieldAccess(AstNode node, AccessSemantics semantics) { | 
| 409     analyzer.Element element = semantics.element; | 409     analyzer.Element element = semantics.element; | 
| 410     dart2js.Element target = converter.convertElement(element); | 410     dart2js.Element target = converter.convertElement(element); | 
| 411     // TODO(johnniwinther): Selector information should be computed in the | 411     // TODO(johnniwinther): Selector information should be computed in the | 
| 412     // [TreeShaker] and shared with the [CpsGeneratingVisitor]. | 412     // [TreeShaker] and shared with the [CpsGeneratingVisitor]. | 
| 413     assert(invariant(node, target.isTopLevel || target.isStatic, | 413     assert(invariant(node, target.isTopLevel || target.isStatic, | 
| 414                      '$target expected to be top-level or static.')); | 414                      '$target expected to be top-level or static.')); | 
| 415     return irBuilder.buildStaticFieldGet(target); | 415     return irBuilder.buildStaticFieldLazyGet(target, null); | 
| 416   } | 416   } | 
| 417 | 417 | 
| 418   ir.Primitive handleBinaryExpression(BinaryExpression node, | 418   ir.Primitive handleBinaryExpression(BinaryExpression node, | 
| 419                                       String op) { | 419                                       String op) { | 
| 420     ir.Primitive left = build(node.leftOperand); | 420     ir.Primitive left = build(node.leftOperand); | 
| 421     ir.Primitive right = build(node.rightOperand); | 421     ir.Primitive right = build(node.rightOperand); | 
| 422     Selector selector = new Selector.binaryOperator(op); | 422     Selector selector = new Selector.binaryOperator(op); | 
| 423     return irBuilder.buildDynamicInvocation( | 423     return irBuilder.buildDynamicInvocation( | 
| 424         left, selector, <ir.Primitive>[right]); | 424         left, selector, <ir.Primitive>[right]); | 
| 425   } | 425   } | 
| (...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 580               catchClause.exceptionParameter.staticElement), | 580               catchClause.exceptionParameter.staticElement), | 
| 581           buildCatchBlock: subbuild(catchClause.body))); | 581           buildCatchBlock: subbuild(catchClause.body))); | 
| 582 | 582 | 
| 583     } | 583     } | 
| 584     irBuilder.buildTry( | 584     irBuilder.buildTry( | 
| 585         tryStatementInfo: new TryStatementInfo(), | 585         tryStatementInfo: new TryStatementInfo(), | 
| 586         buildTryBlock: subbuild(node.body), | 586         buildTryBlock: subbuild(node.body), | 
| 587         catchClauseInfos: catchClauseInfos); | 587         catchClauseInfos: catchClauseInfos); | 
| 588   } | 588   } | 
| 589 } | 589 } | 
| OLD | NEW | 
|---|