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

Issue 2931363003: Add type inference for assignments to properties. (Closed)

Created:
3 years, 6 months ago by Paul Berry
Modified:
3 years, 6 months ago
Reviewers:
ahe, scheglov
CC:
reviews_dartlang.org, dart-fe-team+reviews_google.com
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Add type inference for assignments to properties. This covers explicit property accesses (using both `.` and `?.`) as well as implicit properties of `this`. R=scheglov@google.com Committed: https://github.com/dart-lang/sdk/commit/cdb1e858d201332a847e63bcf97bbd6a48f83101

Patch Set 1 #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+1886 lines, -44 lines) Patch
M pkg/front_end/lib/src/fasta/kernel/fasta_accessors.dart View 5 chunks +17 lines, -0 lines 0 comments Download
M pkg/front_end/lib/src/fasta/kernel/frontend_accessors.dart View 5 chunks +66 lines, -25 lines 0 comments Download
M pkg/front_end/lib/src/fasta/kernel/kernel_shadow_ast.dart View 2 chunks +60 lines, -4 lines 1 comment Download
M pkg/front_end/lib/src/fasta/type_inference/type_inference_listener.dart View 1 chunk +6 lines, -0 lines 0 comments Download
M pkg/front_end/lib/src/fasta/type_inference/type_inferrer.dart View 3 chunks +49 lines, -0 lines 0 comments Download
M pkg/front_end/test/fasta/kompile.status View 2 chunks +8 lines, -0 lines 0 comments Download
M pkg/front_end/test/fasta/strong.status View 3 chunks +2 lines, -3 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_implicit_this.dart View 1 chunk +42 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_implicit_this.dart.direct.expect View 1 chunk +52 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_implicit_this.dart.outline.expect View 1 chunk +35 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_implicit_this.dart.strong.expect View 1 chunk +52 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_implicit_this_upwards.dart View 1 chunk +61 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_implicit_this_upwards.dart.direct.expect View 1 chunk +63 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_implicit_this_upwards.dart.outline.expect View 1 chunk +33 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_implicit_this_upwards.dart.strong.expect View 1 chunk +63 lines, -0 lines 0 comments Download
M pkg/front_end/testcases/inference/infer_assign_to_property.dart.strong.expect View 1 chunk +8 lines, -8 lines 0 comments Download
M pkg/front_end/testcases/inference/infer_assign_to_property_custom.dart.strong.expect View 1 chunk +4 lines, -4 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_full.dart View 1 chunk +47 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_full.dart.direct.expect View 1 chunk +52 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_full.dart.outline.expect View 1 chunk +35 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_full.dart.strong.expect View 1 chunk +52 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_null_aware.dart View 1 chunk +47 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_null_aware.dart.direct.expect View 1 chunk +52 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_null_aware.dart.outline.expect View 1 chunk +35 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_null_aware.dart.strong.expect View 1 chunk +52 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_null_aware_upwards.dart View 1 chunk +61 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_null_aware_upwards.dart.direct.expect View 1 chunk +63 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_null_aware_upwards.dart.outline.expect View 1 chunk +33 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_null_aware_upwards.dart.strong.expect View 1 chunk +63 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_super.dart View 1 chunk +49 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_super.dart.direct.expect View 1 chunk +57 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_super.dart.outline.expect View 1 chunk +39 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_super.dart.strong.expect View 1 chunk +57 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_super_upwards.dart View 1 chunk +75 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_super_upwards.dart.direct.expect View 1 chunk +68 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_super_upwards.dart.outline.expect View 1 chunk +37 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_super_upwards.dart.strong.expect View 1 chunk +68 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_upwards.dart View 1 chunk +61 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_upwards.dart.direct.expect View 1 chunk +63 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_upwards.dart.outline.expect View 1 chunk +33 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/inference/infer_assign_to_property_upwards.dart.strong.expect View 1 chunk +63 lines, -0 lines 0 comments Download
M pkg/front_end/testcases/inference/infer_type_on_var_from_field.dart View 1 chunk +2 lines, -0 lines 0 comments Download
M pkg/front_end/testcases/inference/infer_type_on_var_from_field.dart.strong.expect View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 5 (2 generated)
Paul Berry
3 years, 6 months ago (2017-06-12 17:43:03 UTC) #2
scheglov
LGTM https://codereview.chromium.org/2931363003/diff/1/pkg/front_end/lib/src/fasta/kernel/kernel_shadow_ast.dart File pkg/front_end/lib/src/fasta/kernel/kernel_shadow_ast.dart (right): https://codereview.chromium.org/2931363003/diff/1/pkg/front_end/lib/src/fasta/kernel/kernel_shadow_ast.dart#newcode1470 pkg/front_end/lib/src/fasta/kernel/kernel_shadow_ast.dart:1470: if (nullAwareGuard != null) parts.add('nullAwareGuard=nullAwareGuard'); 'nullAwareGuard=$nullAwareGuard'
3 years, 6 months ago (2017-06-12 18:19:02 UTC) #3
Paul Berry
3 years, 6 months ago (2017-06-12 18:33:13 UTC) #5
Message was sent while issue was closed.
Committed patchset #1 (id:1) manually as
cdb1e858d201332a847e63bcf97bbd6a48f83101 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698