| OLD | NEW | 
|---|
| 1 // Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 part of dart2js.js_emitter; | 5 part of dart2js.js_emitter; | 
| 6 | 6 | 
| 7 /** | 7 /** | 
| 8  * Generates the code for all used classes in the program. Static fields (even | 8  * Generates the code for all used classes in the program. Static fields (even | 
| 9  * in classes) are ignored, since they can be treated as non-class elements. | 9  * in classes) are ignored, since they can be treated as non-class elements. | 
| 10  * | 10  * | 
| (...skipping 776 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 787     needed.addAll(interceptorEmitter.interceptorsReferencedFromConstants()); | 787     needed.addAll(interceptorEmitter.interceptorsReferencedFromConstants()); | 
| 788 | 788 | 
| 789     // Add unneeded interceptors to the [unneededClasses] set. | 789     // Add unneeded interceptors to the [unneededClasses] set. | 
| 790     for (ClassElement interceptor in backend.interceptedClasses) { | 790     for (ClassElement interceptor in backend.interceptedClasses) { | 
| 791       if (!needed.contains(interceptor) | 791       if (!needed.contains(interceptor) | 
| 792           && interceptor != compiler.objectClass) { | 792           && interceptor != compiler.objectClass) { | 
| 793         unneededClasses.add(interceptor); | 793         unneededClasses.add(interceptor); | 
| 794       } | 794       } | 
| 795     } | 795     } | 
| 796 | 796 | 
|  | 797     // These classes are just helpers for the backend's type system. | 
|  | 798     unneededClasses.add(backend.jsMutableArrayClass); | 
|  | 799     unneededClasses.add(backend.jsFixedArrayClass); | 
|  | 800     unneededClasses.add(backend.jsExtendableArrayClass); | 
|  | 801     unneededClasses.add(backend.jsUInt32Class); | 
|  | 802     unneededClasses.add(backend.jsUInt31Class); | 
|  | 803 | 
| 797     return (ClassElement cls) => !unneededClasses.contains(cls); | 804     return (ClassElement cls) => !unneededClasses.contains(cls); | 
| 798   } | 805   } | 
| 799 | 806 | 
| 800   void emitFinishClassesInvocationIfNecessary(CodeBuffer buffer) { | 807   void emitFinishClassesInvocationIfNecessary(CodeBuffer buffer) { | 
| 801     if (needsDefineClass) { | 808     if (needsDefineClass) { | 
| 802       buffer.write('$finishClassesName($classesCollector,' | 809       buffer.write('$finishClassesName($classesCollector,' | 
| 803                    '$_$isolateProperties,' | 810                    '$_$isolateProperties,' | 
| 804                    '${_}null)$N'); | 811                    '${_}null)$N'); | 
| 805 | 812 | 
| 806       // Reset the map. | 813       // Reset the map. | 
| (...skipping 785 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1592   } | 1599   } | 
| 1593 | 1600 | 
| 1594   bool isDeferred(Element element) { | 1601   bool isDeferred(Element element) { | 
| 1595     return compiler.deferredLoadTask.isDeferred(element); | 1602     return compiler.deferredLoadTask.isDeferred(element); | 
| 1596   } | 1603   } | 
| 1597 | 1604 | 
| 1598   bool get areAnyElementsDeferred { | 1605   bool get areAnyElementsDeferred { | 
| 1599     return compiler.deferredLoadTask.areAnyElementsDeferred; | 1606     return compiler.deferredLoadTask.areAnyElementsDeferred; | 
| 1600   } | 1607   } | 
| 1601 } | 1608 } | 
| OLD | NEW | 
|---|