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

Issue 1442883003: generic method type parameter inference (Closed)

Created:
5 years, 1 month ago by Jennifer Messerly
Modified:
5 years ago
Reviewers:
Leaf, Brian Wilkerson
CC:
reviews_dartlang.org
Base URL:
git@github.com:dart-lang/sdk.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

generic method type parameter inference This replaces the existing hard-coded "pseudo generic" methods with actually generic ones. This updates the mock SDK's as well. It does not update the real SDK, that will be in another change that should be landed before this one. R=brianwilkerson@google.com, leafp@google.com Committed: https://github.com/dart-lang/sdk/commit/0e6f692c80a7a208739140edb21c6d9fb9185c3b

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Total comments: 1

Patch Set 5 : #

Total comments: 13

Patch Set 6 : #

Patch Set 7 : remove mutable field #

Total comments: 7

Patch Set 8 : #

Patch Set 9 : #

Patch Set 10 : rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+597 lines, -147 lines) Patch
M pkg/analyzer/lib/src/generated/element.dart View 1 2 3 4 5 6 7 8 2 chunks +7 lines, -0 lines 0 comments Download
M pkg/analyzer/lib/src/generated/static_type_analyzer.dart View 1 2 3 4 5 6 7 8 2 chunks +33 lines, -93 lines 0 comments Download
M pkg/analyzer/lib/src/generated/testing/element_factory.dart View 1 3 chunks +27 lines, -15 lines 0 comments Download
M pkg/analyzer/lib/src/generated/type_system.dart View 1 2 3 4 5 6 7 8 10 chunks +284 lines, -10 lines 0 comments Download
M pkg/analyzer/test/generated/resolver_test.dart View 1 2 3 4 5 6 7 8 9 2 chunks +25 lines, -20 lines 0 comments Download
M pkg/analyzer/test/generated/type_system_test.dart View 1 2 3 4 5 2 chunks +197 lines, -0 lines 0 comments Download
M pkg/analyzer/test/src/context/mock_sdk.dart View 3 chunks +14 lines, -3 lines 0 comments Download
M pkg/analyzer/test/src/task/strong/strong_test_helper.dart View 4 chunks +10 lines, -6 lines 0 comments Download

Messages

Total messages: 19 (5 generated)
Jennifer Messerly
Here's some basic upwards inference for generic method type parameters, intended to replace our existing ...
5 years, 1 month ago (2015-11-18 21:46:26 UTC) #6
Jennifer Messerly
https://codereview.chromium.org/1442883003/diff/60001/pkg/analyzer/lib/src/generated/type_system.dart File pkg/analyzer/lib/src/generated/type_system.dart (right): https://codereview.chromium.org/1442883003/diff/60001/pkg/analyzer/lib/src/generated/type_system.dart#newcode122 pkg/analyzer/lib/src/generated/type_system.dart:122: inferred = inferred.substitute2(inferredTypes, fnTypeParams); oops, this won't work in ...
5 years, 1 month ago (2015-11-18 22:11:48 UTC) #7
Jennifer Messerly
PTAL. New patch set uploaded, with some new tests like recursively bounded quantification.
5 years, 1 month ago (2015-11-18 23:04:43 UTC) #8
Brian Wilkerson
LGTM https://codereview.chromium.org/1442883003/diff/80001/pkg/analyzer/lib/src/generated/static_type_analyzer.dart File pkg/analyzer/lib/src/generated/static_type_analyzer.dart (right): https://codereview.chromium.org/1442883003/diff/80001/pkg/analyzer/lib/src/generated/static_type_analyzer.dart#newcode1702 pkg/analyzer/lib/src/generated/static_type_analyzer.dart:1702: ts is StrongTypeSystemImpl) { Is this test here ...
5 years, 1 month ago (2015-11-19 00:10:17 UTC) #9
Jennifer Messerly
https://codereview.chromium.org/1442883003/diff/80001/pkg/analyzer/lib/src/generated/type_system.dart File pkg/analyzer/lib/src/generated/type_system.dart (right): https://codereview.chromium.org/1442883003/diff/80001/pkg/analyzer/lib/src/generated/type_system.dart#newcode27 pkg/analyzer/lib/src/generated/type_system.dart:27: _TypeParameterBounds _typeParamBounds; On 2015/11/19 00:10:17, Brian Wilkerson wrote: > ...
5 years, 1 month ago (2015-11-19 00:25:26 UTC) #10
Jennifer Messerly
PTAL. Now handles the return type heuristic we had intended (includes some examples). Wasn't 100% ...
5 years, 1 month ago (2015-11-19 01:28:31 UTC) #11
Jennifer Messerly
https://codereview.chromium.org/1442883003/diff/80001/pkg/analyzer/lib/src/generated/type_system.dart File pkg/analyzer/lib/src/generated/type_system.dart (right): https://codereview.chromium.org/1442883003/diff/80001/pkg/analyzer/lib/src/generated/type_system.dart#newcode27 pkg/analyzer/lib/src/generated/type_system.dart:27: _TypeParameterBounds _typeParamBounds; I have an idea how to fix ...
5 years, 1 month ago (2015-11-19 01:36:39 UTC) #12
Jennifer Messerly
https://codereview.chromium.org/1442883003/diff/80001/pkg/analyzer/lib/src/generated/type_system.dart File pkg/analyzer/lib/src/generated/type_system.dart (right): https://codereview.chromium.org/1442883003/diff/80001/pkg/analyzer/lib/src/generated/type_system.dart#newcode27 pkg/analyzer/lib/src/generated/type_system.dart:27: _TypeParameterBounds _typeParamBounds; On 2015/11/19 01:36:39, John Messerly wrote: > ...
5 years, 1 month ago (2015-11-19 01:43:26 UTC) #13
Brian Wilkerson
LGTM https://codereview.chromium.org/1442883003/diff/120001/pkg/analyzer/lib/src/generated/static_type_analyzer.dart File pkg/analyzer/lib/src/generated/static_type_analyzer.dart (right): https://codereview.chromium.org/1442883003/diff/120001/pkg/analyzer/lib/src/generated/static_type_analyzer.dart#newcode1702 pkg/analyzer/lib/src/generated/static_type_analyzer.dart:1702: ts is StrongTypeSystemImpl) { I'll ask again: Is ...
5 years, 1 month ago (2015-11-19 15:04:55 UTC) #14
Jennifer Messerly
oops, sorry I forgot to reply to that comment :) https://codereview.chromium.org/1442883003/diff/120001/pkg/analyzer/lib/src/generated/static_type_analyzer.dart File pkg/analyzer/lib/src/generated/static_type_analyzer.dart (right): https://codereview.chromium.org/1442883003/diff/120001/pkg/analyzer/lib/src/generated/static_type_analyzer.dart#newcode1702 ...
5 years, 1 month ago (2015-11-19 18:12:47 UTC) #15
Jennifer Messerly
https://codereview.chromium.org/1442883003/diff/120001/pkg/analyzer/lib/src/generated/type_system.dart File pkg/analyzer/lib/src/generated/type_system.dart (right): https://codereview.chromium.org/1442883003/diff/120001/pkg/analyzer/lib/src/generated/type_system.dart#newcode68 pkg/analyzer/lib/src/generated/type_system.dart:68: var typeBounds = new _StrongInferenceTypeSystem( On 2015/11/19 15:04:55, Brian ...
5 years, 1 month ago (2015-11-19 18:15:04 UTC) #16
Leaf
This LGTM, thanks John! https://codereview.chromium.org/1442883003/diff/80001/pkg/analyzer/lib/src/generated/element.dart File pkg/analyzer/lib/src/generated/element.dart (right): https://codereview.chromium.org/1442883003/diff/80001/pkg/analyzer/lib/src/generated/element.dart#newcode9286 pkg/analyzer/lib/src/generated/element.dart:9286: int get hashCode => baseElement.hashCode; ...
5 years, 1 month ago (2015-11-20 02:09:43 UTC) #17
Jennifer Messerly
https://codereview.chromium.org/1442883003/diff/80001/pkg/analyzer/lib/src/generated/element.dart File pkg/analyzer/lib/src/generated/element.dart (right): https://codereview.chromium.org/1442883003/diff/80001/pkg/analyzer/lib/src/generated/element.dart#newcode9286 pkg/analyzer/lib/src/generated/element.dart:9286: int get hashCode => baseElement.hashCode; On 2015/11/20 02:09:43, Leaf ...
5 years, 1 month ago (2015-11-20 17:09:46 UTC) #18
Jennifer Messerly
5 years ago (2015-11-24 17:34:52 UTC) #19
Message was sent while issue was closed.
Committed patchset #10 (id:180001) manually as
0e6f692c80a7a208739140edb21c6d9fb9185c3b (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698