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; | 5 part of dart2js; |
6 | 6 |
7 /** | 7 /** |
8 * If true, print a warning for each method that was resolved, but not | 8 * If true, print a warning for each method that was resolved, but not |
9 * compiled. | 9 * compiled. |
10 */ | 10 */ |
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
122 // TODO(ahe,karlklose): rename this? | 122 // TODO(ahe,karlklose): rename this? |
123 void dumpInferredTypes() {} | 123 void dumpInferredTypes() {} |
124 | 124 |
125 ItemCompilationContext createItemCompilationContext() { | 125 ItemCompilationContext createItemCompilationContext() { |
126 return new ItemCompilationContext(); | 126 return new ItemCompilationContext(); |
127 } | 127 } |
128 | 128 |
129 bool classNeedsRti(ClassElement cls); | 129 bool classNeedsRti(ClassElement cls); |
130 bool methodNeedsRti(FunctionElement function); | 130 bool methodNeedsRti(FunctionElement function); |
131 | 131 |
132 // The following methods are hooks for the backend to register its | 132 /// Called during resolution to notify to the backend that a class is |
133 // helper methods. | 133 /// being instantiated. |
134 void registerInstantiatedClass(ClassElement cls, | 134 void registerInstantiatedClass(ClassElement cls, |
135 Enqueuer enqueuer, | 135 Enqueuer enqueuer, |
136 TreeElements elements) {} | 136 TreeElements elements) {} |
137 | |
138 /// Called during resolution to notify to the backend that the | |
139 /// program uses string interpolation. | |
137 void registerStringInterpolation(TreeElements elements) {} | 140 void registerStringInterpolation(TreeElements elements) {} |
141 | |
ahe
2013/08/15 15:56:54
DANGER DANGER!!!
Extra line!!!
ngeoffray
2013/08/15 16:06:59
Done.
| |
142 | |
143 /// Called during resolution to notify to the backend that the | |
144 /// program has a catch statement. | |
138 void registerCatchStatement(Enqueuer enqueuer, | 145 void registerCatchStatement(Enqueuer enqueuer, |
139 TreeElements elements) {} | 146 TreeElements elements) {} |
140 void registerWrapException(TreeElements elements) {} | 147 |
148 /// Called during resolution to notify to the backend that the | |
149 /// program explicitly throws an exception. | |
141 void registerThrowExpression(TreeElements elements) {} | 150 void registerThrowExpression(TreeElements elements) {} |
151 | |
152 /// Called during resolution to notify to the backend that the | |
153 /// program has a global variable with a lazy initializer. | |
142 void registerLazyField(TreeElements elements) {} | 154 void registerLazyField(TreeElements elements) {} |
155 | |
ahe
2013/08/15 15:56:54
SEGFAULT!
ngeoffray
2013/08/15 16:06:59
Done.
| |
156 | |
157 /// Called during resolution to notify to the backend that the | |
158 /// program uses a type variable as an expression. | |
143 void registerTypeVariableExpression(TreeElements elements) {} | 159 void registerTypeVariableExpression(TreeElements elements) {} |
160 | |
161 /// Called during resolution to notify to the backend that the | |
162 /// program uses a type literal. | |
144 void registerTypeLiteral(Element element, TreeElements elements) {} | 163 void registerTypeLiteral(Element element, TreeElements elements) {} |
164 | |
165 /// Called during resolution to notify to the backend that the | |
166 /// program has a catch statement with a stack trace. | |
145 void registerStackTraceInCatch(TreeElements elements) {} | 167 void registerStackTraceInCatch(TreeElements elements) {} |
168 | |
169 | |
ahe
2013/08/15 15:56:54
ARGH!!!
ngeoffray
2013/08/15 16:06:59
Done.
| |
170 /// Register an is check to the backend. | |
146 void registerIsCheck(DartType type, | 171 void registerIsCheck(DartType type, |
147 Enqueuer enqueuer, | 172 Enqueuer enqueuer, |
148 TreeElements elements) {} | 173 TreeElements elements) {} |
174 | |
175 /// Register an is check to the backend. | |
ahe
2013/08/15 15:56:54
is -> as
ngeoffray
2013/08/15 16:06:59
Done.
| |
149 void registerAsCheck(DartType type, TreeElements elements) {} | 176 void registerAsCheck(DartType type, TreeElements elements) {} |
177 | |
178 /// Register that the application may throw a [NoSuchMethodError]. | |
150 void registerThrowNoSuchMethod(TreeElements elements) {} | 179 void registerThrowNoSuchMethod(TreeElements elements) {} |
180 | |
181 /// Register that the application may throw a [RuntimeError]. | |
151 void registerThrowRuntimeError(TreeElements elements) {} | 182 void registerThrowRuntimeError(TreeElements elements) {} |
183 | |
184 /// Register that the application may throw an | |
185 /// [AbstractClassInstantiationError]. | |
152 void registerAbstractClassInstantiation(TreeElements elements) {} | 186 void registerAbstractClassInstantiation(TreeElements elements) {} |
187 | |
188 /// Register that the application may throw a [FallThroughError]. | |
153 void registerFallThroughError(TreeElements elements) {} | 189 void registerFallThroughError(TreeElements elements) {} |
190 | |
191 /// Register that a super call will end up calling | |
192 /// [: super.noSuchMethod :]. | |
154 void registerSuperNoSuchMethod(TreeElements elements) {} | 193 void registerSuperNoSuchMethod(TreeElements elements) {} |
194 | |
195 /// Register that the application creates a constant map. | |
155 void registerConstantMap(TreeElements elements) {} | 196 void registerConstantMap(TreeElements elements) {} |
197 | |
156 /** | 198 /** |
157 * Call this to register that an instantiated generic class has a call | 199 * Call this to register that an instantiated generic class has a call |
158 * method. | 200 * method. |
159 */ | 201 */ |
160 void registerGenericCallMethod(Element callMethod, | 202 void registerGenericCallMethod(Element callMethod, |
161 Enqueuer enqueuer, | 203 Enqueuer enqueuer, |
162 TreeElements elements) {} | 204 TreeElements elements) {} |
163 /** | 205 /** |
164 * Call this to register that a getter exists for a function on an | 206 * Call this to register that a getter exists for a function on an |
165 * instantiated generic class. | 207 * instantiated generic class. |
(...skipping 1320 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1486 | 1528 |
1487 void close() {} | 1529 void close() {} |
1488 | 1530 |
1489 toString() => name; | 1531 toString() => name; |
1490 | 1532 |
1491 /// Convenience method for getting an [api.CompilerOutputProvider]. | 1533 /// Convenience method for getting an [api.CompilerOutputProvider]. |
1492 static NullSink outputProvider(String name, String extension) { | 1534 static NullSink outputProvider(String name, String extension) { |
1493 return new NullSink('$name.$extension'); | 1535 return new NullSink('$name.$extension'); |
1494 } | 1536 } |
1495 } | 1537 } |
OLD | NEW |