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 resolution; | 5 part of resolution; |
6 | 6 |
7 abstract class TreeElements { | 7 abstract class TreeElements { |
8 Element get currentElement; | 8 Element get currentElement; |
9 Setlet<Node> get superUses; | 9 Setlet<Node> get superUses; |
10 | 10 |
(...skipping 1260 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1271 return measure(() => SignatureResolver.analyze( | 1271 return measure(() => SignatureResolver.analyze( |
1272 compiler, node.parameters, node.returnType, element, | 1272 compiler, node.parameters, node.returnType, element, |
1273 new ResolutionRegistry(compiler, element), | 1273 new ResolutionRegistry(compiler, element), |
1274 defaultValuesError: defaultValuesError, | 1274 defaultValuesError: defaultValuesError, |
1275 createRealParameters: true)); | 1275 createRealParameters: true)); |
1276 }); | 1276 }); |
1277 } | 1277 } |
1278 | 1278 |
1279 TreeElements resolveTypedef(TypedefElementX element) { | 1279 TreeElements resolveTypedef(TypedefElementX element) { |
1280 if (element.isResolved) return element.treeElements; | 1280 if (element.isResolved) return element.treeElements; |
| 1281 compiler.world.allTypedefs.add(element); |
1281 return _resolveTypeDeclaration(element, () { | 1282 return _resolveTypeDeclaration(element, () { |
1282 ResolutionRegistry registry = new ResolutionRegistry(compiler, element); | 1283 ResolutionRegistry registry = new ResolutionRegistry(compiler, element); |
1283 return compiler.withCurrentElement(element, () { | 1284 return compiler.withCurrentElement(element, () { |
1284 return measure(() { | 1285 return measure(() { |
1285 assert(element.resolutionState == STATE_NOT_STARTED); | 1286 assert(element.resolutionState == STATE_NOT_STARTED); |
1286 element.resolutionState = STATE_STARTED; | 1287 element.resolutionState = STATE_STARTED; |
1287 Typedef node = | 1288 Typedef node = |
1288 compiler.parser.measure(() => element.parseNode(compiler)); | 1289 compiler.parser.measure(() => element.parseNode(compiler)); |
1289 TypedefResolverVisitor visitor = | 1290 TypedefResolverVisitor visitor = |
1290 new TypedefResolverVisitor(compiler, element, registry); | 1291 new TypedefResolverVisitor(compiler, element, registry); |
(...skipping 3537 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4828 } | 4829 } |
4829 | 4830 |
4830 /// The result for the resolution of the `assert` method. | 4831 /// The result for the resolution of the `assert` method. |
4831 class AssertResult implements ResolutionResult { | 4832 class AssertResult implements ResolutionResult { |
4832 const AssertResult(); | 4833 const AssertResult(); |
4833 | 4834 |
4834 Element get element => null; | 4835 Element get element => null; |
4835 | 4836 |
4836 String toString() => 'AssertResult()'; | 4837 String toString() => 'AssertResult()'; |
4837 } | 4838 } |
OLD | NEW |