| 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 dart2js.js_emitter.full_emitter; | 5 library dart2js.js_emitter.full_emitter; |
| 6 | 6 |
| 7 import 'dart:convert'; | 7 import 'dart:convert'; |
| 8 import 'dart:collection' show HashMap; | 8 import 'dart:collection' show HashMap; |
| 9 | 9 |
| 10 import 'package:js_runtime/shared/embedded_names.dart' as embeddedNames; | 10 import 'package:js_runtime/shared/embedded_names.dart' as embeddedNames; |
| (...skipping 382 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 393 case JsBuiltin.getMetadata: | 393 case JsBuiltin.getMetadata: |
| 394 String metadataAccess = | 394 String metadataAccess = |
| 395 generateEmbeddedGlobalAccessString(embeddedNames.METADATA); | 395 generateEmbeddedGlobalAccessString(embeddedNames.METADATA); |
| 396 return jsAst.js.expressionTemplateFor("$metadataAccess[#]"); | 396 return jsAst.js.expressionTemplateFor("$metadataAccess[#]"); |
| 397 | 397 |
| 398 case JsBuiltin.getType: | 398 case JsBuiltin.getType: |
| 399 String typesAccess = | 399 String typesAccess = |
| 400 generateEmbeddedGlobalAccessString(embeddedNames.TYPES); | 400 generateEmbeddedGlobalAccessString(embeddedNames.TYPES); |
| 401 return jsAst.js.expressionTemplateFor("$typesAccess[#]"); | 401 return jsAst.js.expressionTemplateFor("$typesAccess[#]"); |
| 402 | 402 |
| 403 case JsBuiltin.createDartClosureFromNameOfStaticFunction: |
| 404 // The global-functions map contains a map from name to tear-off |
| 405 // getters. |
| 406 String functionGettersMap = |
| 407 generateEmbeddedGlobalAccessString(embeddedNames.GLOBAL_FUNCTIONS); |
| 408 return jsAst.js.expressionTemplateFor("$functionGettersMap[#]()"); |
| 409 |
| 403 default: | 410 default: |
| 404 compiler.internalError(NO_LOCATION_SPANNABLE, | 411 compiler.internalError(NO_LOCATION_SPANNABLE, |
| 405 "Unhandled Builtin: $builtin"); | 412 "Unhandled Builtin: $builtin"); |
| 406 return null; | 413 return null; |
| 407 } | 414 } |
| 408 } | 415 } |
| 409 | 416 |
| 410 List<jsAst.Statement> buildTrivialNsmHandlers(){ | 417 List<jsAst.Statement> buildTrivialNsmHandlers(){ |
| 411 return nsmEmitter.buildTrivialNsmHandlers(); | 418 return nsmEmitter.buildTrivialNsmHandlers(); |
| 412 } | 419 } |
| (...skipping 1687 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2100 for (Element element in compiler.enqueuer.codegen.newlyEnqueuedElements) { | 2107 for (Element element in compiler.enqueuer.codegen.newlyEnqueuedElements) { |
| 2101 if (element.isInstanceMember) { | 2108 if (element.isInstanceMember) { |
| 2102 cachedClassBuilders.remove(element.enclosingClass); | 2109 cachedClassBuilders.remove(element.enclosingClass); |
| 2103 | 2110 |
| 2104 nativeEmitter.cachedBuilders.remove(element.enclosingClass); | 2111 nativeEmitter.cachedBuilders.remove(element.enclosingClass); |
| 2105 | 2112 |
| 2106 } | 2113 } |
| 2107 } | 2114 } |
| 2108 } | 2115 } |
| 2109 } | 2116 } |
| OLD | NEW |