Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(291)

Side by Side Diff: pkg/analyzer/lib/src/generated/element.dart

Issue 1442883003: generic method type parameter inference (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: rebase Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | pkg/analyzer/lib/src/generated/static_type_analyzer.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 engine.element; 5 library engine.element;
6 6
7 import 'dart:collection'; 7 import 'dart:collection';
8 import 'dart:math' show min; 8 import 'dart:math' show min;
9 9
10 import 'package:analyzer/src/generated/utilities_general.dart'; 10 import 'package:analyzer/src/generated/utilities_general.dart';
(...skipping 9266 matching lines...) Expand 10 before | Expand all | Expand 10 after
9277 @override 9277 @override
9278 ParameterElement get baseElement => super.baseElement as ParameterElement; 9278 ParameterElement get baseElement => super.baseElement as ParameterElement;
9279 9279
9280 @override 9280 @override
9281 String get defaultValueCode => baseElement.defaultValueCode; 9281 String get defaultValueCode => baseElement.defaultValueCode;
9282 9282
9283 @override 9283 @override
9284 Element get enclosingElement => baseElement.enclosingElement; 9284 Element get enclosingElement => baseElement.enclosingElement;
9285 9285
9286 @override 9286 @override
9287 int get hashCode => baseElement.hashCode;
9288
9289 @override
9287 bool get isInitializingFormal => baseElement.isInitializingFormal; 9290 bool get isInitializingFormal => baseElement.isInitializingFormal;
9288 9291
9289 @override 9292 @override
9290 ParameterKind get parameterKind => baseElement.parameterKind; 9293 ParameterKind get parameterKind => baseElement.parameterKind;
9291 9294
9292 @override 9295 @override
9293 List<ParameterElement> get parameters { 9296 List<ParameterElement> get parameters {
9294 List<ParameterElement> baseParameters = baseElement.parameters; 9297 List<ParameterElement> baseParameters = baseElement.parameters;
9295 int parameterCount = baseParameters.length; 9298 int parameterCount = baseParameters.length;
9296 if (parameterCount == 0) { 9299 if (parameterCount == 0) {
9297 return baseParameters; 9300 return baseParameters;
9298 } 9301 }
9299 List<ParameterElement> parameterizedParameters = 9302 List<ParameterElement> parameterizedParameters =
9300 new List<ParameterElement>(parameterCount); 9303 new List<ParameterElement>(parameterCount);
9301 for (int i = 0; i < parameterCount; i++) { 9304 for (int i = 0; i < parameterCount; i++) {
9302 parameterizedParameters[i] = 9305 parameterizedParameters[i] =
9303 ParameterMember.from(baseParameters[i], definingType); 9306 ParameterMember.from(baseParameters[i], definingType);
9304 } 9307 }
9305 return parameterizedParameters; 9308 return parameterizedParameters;
9306 } 9309 }
9307 9310
9308 @override 9311 @override
9309 List<TypeParameterElement> get typeParameters => baseElement.typeParameters; 9312 List<TypeParameterElement> get typeParameters => baseElement.typeParameters;
9310 9313
9311 @override 9314 @override
9312 SourceRange get visibleRange => baseElement.visibleRange; 9315 SourceRange get visibleRange => baseElement.visibleRange;
9313 9316
9314 @override 9317 @override
9318 bool operator ==(Object object) =>
9319 object is ParameterMember && baseElement == object.baseElement;
9320
9321 @override
9315 accept(ElementVisitor visitor) => visitor.visitParameterElement(this); 9322 accept(ElementVisitor visitor) => visitor.visitParameterElement(this);
9316 9323
9317 @override 9324 @override
9318 FormalParameter computeNode() => baseElement.computeNode(); 9325 FormalParameter computeNode() => baseElement.computeNode();
9319 9326
9320 @override 9327 @override
9321 Element getAncestor(Predicate<Element> predicate) { 9328 Element getAncestor(Predicate<Element> predicate) {
9322 Element element = baseElement.getAncestor(predicate); 9329 Element element = baseElement.getAncestor(predicate);
9323 ParameterizedType definingType = this.definingType; 9330 ParameterizedType definingType = this.definingType;
9324 if (definingType is InterfaceType) { 9331 if (definingType is InterfaceType) {
(...skipping 1820 matching lines...) Expand 10 before | Expand all | Expand 10 after
11145 11152
11146 @override 11153 @override
11147 void visitElement(Element element) { 11154 void visitElement(Element element) {
11148 int offset = element.nameOffset; 11155 int offset = element.nameOffset;
11149 if (offset != -1) { 11156 if (offset != -1) {
11150 map[offset] = element; 11157 map[offset] = element;
11151 } 11158 }
11152 super.visitElement(element); 11159 super.visitElement(element);
11153 } 11160 }
11154 } 11161 }
OLDNEW
« no previous file with comments | « no previous file | pkg/analyzer/lib/src/generated/static_type_analyzer.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698