Chromium Code Reviews| 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.resolution.signatures; | 5 library dart2js.resolution.signatures; |
| 6 | 6 |
| 7 import '../common.dart'; | 7 import '../common.dart'; |
| 8 import '../common/resolution.dart'; | 8 import '../common/resolution.dart'; |
| 9 import '../dart_types.dart'; | 9 import '../dart_types.dart'; |
| 10 import '../elements/elements.dart'; | 10 import '../elements/elements.dart'; |
| (...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 295 */ | 295 */ |
| 296 static FunctionSignature analyze( | 296 static FunctionSignature analyze( |
| 297 Resolution resolution, | 297 Resolution resolution, |
| 298 Scope scope, | 298 Scope scope, |
| 299 NodeList typeVariables, | 299 NodeList typeVariables, |
| 300 NodeList formalParameters, | 300 NodeList formalParameters, |
| 301 Node returnNode, | 301 Node returnNode, |
| 302 FunctionTypedElement element, | 302 FunctionTypedElement element, |
| 303 ResolutionRegistry registry, | 303 ResolutionRegistry registry, |
| 304 {MessageKind defaultValuesError, | 304 {MessageKind defaultValuesError, |
| 305 bool isNewSyntax: false, | |
|
Siggi Cherem (dart-lang)
2016/12/12 23:20:40
while you are here, would you mind updating the da
| |
| 305 bool createRealParameters: false, | 306 bool createRealParameters: false, |
| 306 bool isFunctionExpression: false}) { | 307 bool isFunctionExpression: false}) { |
| 307 DiagnosticReporter reporter = resolution.reporter; | 308 DiagnosticReporter reporter = resolution.reporter; |
| 308 | 309 |
| 309 List<DartType> createTypeVariables(NodeList typeVariableNodes) { | 310 List<DartType> createTypeVariables(NodeList typeVariableNodes) { |
| 310 if (element.isPatch) { | 311 if (element.isPatch) { |
| 311 FunctionTypedElement origin = element.origin; | 312 FunctionTypedElement origin = element.origin; |
| 312 origin.computeType(resolution); | 313 origin.computeType(resolution); |
| 313 return origin.typeVariables; | 314 return origin.typeVariables; |
| 314 } | 315 } |
| (...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 411 LinkBuilder<DartType> parameterTypes = new LinkBuilder<DartType>(); | 412 LinkBuilder<DartType> parameterTypes = new LinkBuilder<DartType>(); |
| 412 for (FormalElement parameter in parameters) { | 413 for (FormalElement parameter in parameters) { |
| 413 parameterTypes.addLast(parameter.type); | 414 parameterTypes.addLast(parameter.type); |
| 414 } | 415 } |
| 415 List<DartType> optionalParameterTypes = const <DartType>[]; | 416 List<DartType> optionalParameterTypes = const <DartType>[]; |
| 416 List<String> namedParameters = const <String>[]; | 417 List<String> namedParameters = const <String>[]; |
| 417 List<DartType> namedParameterTypes = const <DartType>[]; | 418 List<DartType> namedParameterTypes = const <DartType>[]; |
| 418 List<Element> orderedOptionalParameters = | 419 List<Element> orderedOptionalParameters = |
| 419 visitor.optionalParameters.toList(); | 420 visitor.optionalParameters.toList(); |
| 420 if (visitor.optionalParametersAreNamed) { | 421 if (visitor.optionalParametersAreNamed) { |
| 421 // TODO(karlklose); replace when [visitor.optinalParameters] is a [List]. | 422 // TODO(karlklose); replace when [visitor.optionalParameters] is a [List]. |
| 422 orderedOptionalParameters.sort((Element a, Element b) { | 423 orderedOptionalParameters.sort((Element a, Element b) { |
| 423 return a.name.compareTo(b.name); | 424 return a.name.compareTo(b.name); |
| 424 }); | 425 }); |
| 425 LinkBuilder<String> namedParametersBuilder = new LinkBuilder<String>(); | 426 LinkBuilder<String> namedParametersBuilder = new LinkBuilder<String>(); |
| 426 LinkBuilder<DartType> namedParameterTypesBuilder = | 427 LinkBuilder<DartType> namedParameterTypesBuilder = |
| 427 new LinkBuilder<DartType>(); | 428 new LinkBuilder<DartType>(); |
| 428 for (FormalElement parameter in orderedOptionalParameters) { | 429 for (FormalElement parameter in orderedOptionalParameters) { |
| 429 namedParametersBuilder.addLast(parameter.name); | 430 namedParametersBuilder.addLast(parameter.name); |
| 430 namedParameterTypesBuilder.addLast(parameter.type); | 431 namedParameterTypesBuilder.addLast(parameter.type); |
| 431 } | 432 } |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 482 /// variables of the function signature itself when its signature is analyzed. | 483 /// variables of the function signature itself when its signature is analyzed. |
| 483 class FunctionSignatureBuildingScope extends TypeVariablesScope { | 484 class FunctionSignatureBuildingScope extends TypeVariablesScope { |
| 484 @override | 485 @override |
| 485 final List<DartType> typeVariables; | 486 final List<DartType> typeVariables; |
| 486 | 487 |
| 487 FunctionSignatureBuildingScope(Scope parent, this.typeVariables) | 488 FunctionSignatureBuildingScope(Scope parent, this.typeVariables) |
| 488 : super(parent); | 489 : super(parent); |
| 489 | 490 |
| 490 String toString() => 'FunctionSignatureBuildingScope($typeVariables)'; | 491 String toString() => 'FunctionSignatureBuildingScope($typeVariables)'; |
| 491 } | 492 } |
| OLD | NEW |