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.program_builder; | 5 library dart2js.js_emitter.program_builder; |
6 | 6 |
7 import 'dart:io'; | 7 import 'dart:io'; |
8 import 'dart:convert' show JSON; | 8 import 'dart:convert' show JSON; |
9 | 9 |
10 import '../../closure.dart' show ClosureTask, ClosureFieldElement; | 10 import '../../closure.dart' show ClosureTask, ClosureFieldElement; |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
73 | 73 |
74 /// Builds a self-contained representation of the program that can then be | 74 /// Builds a self-contained representation of the program that can then be |
75 /// emitted more easily by the individual emitters. | 75 /// emitted more easily by the individual emitters. |
76 class ProgramBuilder { | 76 class ProgramBuilder { |
77 final CompilerOptions _options; | 77 final CompilerOptions _options; |
78 final DiagnosticReporter _reporter; | 78 final DiagnosticReporter _reporter; |
79 final ElementEnvironment _elementEnvironment; | 79 final ElementEnvironment _elementEnvironment; |
80 final CommonElements _commonElements; | 80 final CommonElements _commonElements; |
81 final DartTypes _types; | 81 final DartTypes _types; |
82 final DeferredLoadTask _deferredLoadTask; | 82 final DeferredLoadTask _deferredLoadTask; |
83 final ClosureTask _closureToClassMapper; | 83 final ClosureTask _closureDataLookup; |
84 final CodegenWorldBuilder _worldBuilder; | 84 final CodegenWorldBuilder _worldBuilder; |
85 final NativeCodegenEnqueuer _nativeCodegenEnqueuer; | 85 final NativeCodegenEnqueuer _nativeCodegenEnqueuer; |
86 final BackendUsage _backendUsage; | 86 final BackendUsage _backendUsage; |
87 final JavaScriptConstantCompiler _constantHandler; | 87 final JavaScriptConstantCompiler _constantHandler; |
88 final NativeData _nativeData; | 88 final NativeData _nativeData; |
89 final RuntimeTypesNeed _rtiNeed; | 89 final RuntimeTypesNeed _rtiNeed; |
90 final MirrorsData _mirrorsData; | 90 final MirrorsData _mirrorsData; |
91 final InterceptorData _interceptorData; | 91 final InterceptorData _interceptorData; |
92 final SuperMemberData _superMemberData; | 92 final SuperMemberData _superMemberData; |
93 final RuntimeTypesChecks _rtiChecks; | 93 final RuntimeTypesChecks _rtiChecks; |
(...skipping 22 matching lines...) Expand all Loading... |
116 /// True if the program should store function types in the metadata. | 116 /// True if the program should store function types in the metadata. |
117 bool _storeFunctionTypesInMetadata = false; | 117 bool _storeFunctionTypesInMetadata = false; |
118 | 118 |
119 ProgramBuilder( | 119 ProgramBuilder( |
120 this._options, | 120 this._options, |
121 this._reporter, | 121 this._reporter, |
122 this._elementEnvironment, | 122 this._elementEnvironment, |
123 this._commonElements, | 123 this._commonElements, |
124 this._types, | 124 this._types, |
125 this._deferredLoadTask, | 125 this._deferredLoadTask, |
126 this._closureToClassMapper, | 126 this._closureDataLookup, |
127 this._worldBuilder, | 127 this._worldBuilder, |
128 this._nativeCodegenEnqueuer, | 128 this._nativeCodegenEnqueuer, |
129 this._backendUsage, | 129 this._backendUsage, |
130 this._constantHandler, | 130 this._constantHandler, |
131 this._nativeData, | 131 this._nativeData, |
132 this._rtiNeed, | 132 this._rtiNeed, |
133 this._mirrorsData, | 133 this._mirrorsData, |
134 this._interceptorData, | 134 this._interceptorData, |
135 this._superMemberData, | 135 this._superMemberData, |
136 this._rtiChecks, | 136 this._rtiChecks, |
(...skipping 548 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
685 bool isClosureBaseClass = cls == _commonElements.closureClass; | 685 bool isClosureBaseClass = cls == _commonElements.closureClass; |
686 | 686 |
687 List<Method> methods = []; | 687 List<Method> methods = []; |
688 List<StubMethod> callStubs = <StubMethod>[]; | 688 List<StubMethod> callStubs = <StubMethod>[]; |
689 | 689 |
690 ClassStubGenerator classStubGenerator = new ClassStubGenerator( | 690 ClassStubGenerator classStubGenerator = new ClassStubGenerator( |
691 _task.emitter, _commonElements, _namer, _worldBuilder, _closedWorld, | 691 _task.emitter, _commonElements, _namer, _worldBuilder, _closedWorld, |
692 enableMinification: _options.enableMinification); | 692 enableMinification: _options.enableMinification); |
693 RuntimeTypeGenerator runtimeTypeGenerator = new RuntimeTypeGenerator( | 693 RuntimeTypeGenerator runtimeTypeGenerator = new RuntimeTypeGenerator( |
694 _commonElements, | 694 _commonElements, |
695 _closureToClassMapper, | 695 _closureDataLookup, |
696 _task, | 696 _task, |
697 _namer, | 697 _namer, |
698 _nativeData, | 698 _nativeData, |
699 _rtiChecks, | 699 _rtiChecks, |
700 _rtiEncoder, | 700 _rtiEncoder, |
701 _rtiNeed, | 701 _rtiNeed, |
702 _rtiSubstitutions, | 702 _rtiSubstitutions, |
703 _jsInteropAnalysis); | 703 _jsInteropAnalysis); |
704 | 704 |
705 void visitMember(ClassEntity declarer, MemberEntity member) { | 705 void visitMember(ClassEntity declarer, MemberEntity member) { |
(...skipping 483 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1189 Constant constant = new Constant(name, holder, constantValue); | 1189 Constant constant = new Constant(name, holder, constantValue); |
1190 _constants[constantValue] = constant; | 1190 _constants[constantValue] = constant; |
1191 } | 1191 } |
1192 } | 1192 } |
1193 | 1193 |
1194 Holder _registerStaticStateHolder() { | 1194 Holder _registerStaticStateHolder() { |
1195 return _registry.registerHolder(_namer.staticStateHolder, | 1195 return _registry.registerHolder(_namer.staticStateHolder, |
1196 isStaticStateHolder: true); | 1196 isStaticStateHolder: true); |
1197 } | 1197 } |
1198 } | 1198 } |
OLD | NEW |