Konstantin Shcheglov
4756d077ed
Update NamedType to use ImportPrefixReference and name token.
...
Using Identifier expression inside NamedType does not make sense.
Change-Id: I4a61d2b472fd66fb7c5e6e92a80cccb391b06d49
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/294920
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-04-28 17:31:46 +00:00
Paul Berry
637dd76c7f
Patterns parsing: fix ambiguity resolution for when and as.
...
This change fixes parsing of case clauses such as:
case foo when !flag:
Constructions like this require some lookahead in order to parse
correctly, because the token `when` is valid both as an identifier and
as a part of the grammar for a case clause. Therefore, at the time
`foo` is encountered, the parser must decide whether it is looking at
a variable pattern (`foo when`, where `when` is the name of the
variable) or an identifier pattern (`foo`, where `when` begins the
case's guard clause). Previous to this fix, the algorithm for
disambiguating these two choices was as follows:
- If the token sequence starting at `foo` looked like a type, and the
token that follows was an identifier, the parser assumed it was
looking at a variable pattern with a type; otherwise it assumed it
was looking at an identifier pattern.
- EXCEPT that if the token that followed the supposed type was `when`
or `as` (both of which are valid identifiers), then it probed
further:
- If the token that followed `when` or `as` was a token that could
legitimately follow a pattern, then it assumed that it was looking
at a variable pattern with a type. (The tokens that could
legitimately follow a pattern are `,`, `:`, `||`, `&&`, `)`, `}`,
`]`, `as`, `when`, `?`, `!`).
- Otherwise it assumed that it was looking at an identifier pattern.
This didn't fully disambiguate, because the third bullet didn't
account for the fact that the tokens `as`, `when`, and `!` could
_either_ legitimately follow a pattern _or_ legitimately begin an
expression (or, in the case of `when`, a type), therefore constructs
like the following were incorrectly parsed:
- `case foo when as:` (where `as` is a local boolean variable)
- `case foo when when:` (where `when` is a local boolean variable)
- `case foo when !flag:` (where `flag` is a local boolean variable)
- `case foo as when:` (where `when` is the name of a type)
The solution is to simplify the disambiguation logic so that if if the
token that follows the supposed type is `when` or `as`, then the
parser assumes that it's looking at an identifier pattern, _not_ a
typed variable pattern.
The consequence of this is that the above four constructions are
parsed correctly; however it is no longer possible for a typed
variable pattern to name a variable `when` or `as`.
For consistency we would like to prohibit _any_ variable pattern from
naming a variable `when` or `as`, however to keep this change as small
as possible (and reduce the risk involved in a possible cherry-pick)
that will be postponed until a later CL.
Fixes #52199 .
Bug: https://github.com/dart-lang/sdk/issues/52199
Change-Id: Ibab9b92f01e3e4020d7d64f1ff000a9b964a4564
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/299400
Commit-Queue: Paul Berry <paulberry@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Jens Johansen <jensj@google.com >
2023-04-28 13:22:28 +00:00
Brian Wilkerson
7d9340156e
Add a missed todo comment
...
Change-Id: I48dd729555861e87240be137d7a35d76dabeca6a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/299360
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Auto-Submit: Brian Wilkerson <brianwilkerson@google.com >
2023-04-27 21:53:38 +00:00
Konstantin Shcheglov
310f854c24
Issue 52177. Add rename refactoring for type parameters.
...
Bug: https://github.com/dart-lang/sdk/issues/52177
Change-Id: I4ae5bb7d72c8956af6dcd91ad28fb1d7397bf424
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/299280
Reviewed-by: Samuel Rawlins <srawlins@google.com >
Reviewed-by: Phil Quitslund <pquitslund@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2023-04-27 21:43:48 +00:00
Konstantin Shcheglov
a0218e916c
Issue 52176. Support for ojbect pattern in 'Create Getter' and 'CCreate Field'.
...
Bug: https://github.com/dart-lang/sdk/issues/52176
Change-Id: Ic9c97bec1981c5613b23206e872f6f708d53792d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/298920
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2023-04-27 20:52:39 +00:00
Konstantin Shcheglov
58e48de282
Issue 52175. Support for ConstructorDeclaration in 'Remove unused element' quick fix.
...
Bug: https://github.com/dart-lang/sdk/issues/52175
Change-Id: I7c5a237fc9a358488e4431d4785ec51b0322f66a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/298800
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2023-04-27 16:00:12 +00:00
Danny Tuppeny
0588afe783
[analysis_server] Add a script to print tests marked @FailingTest() referencing closed GitHub issues
...
Change-Id: I8e68b70c4f271d1610f955cf22dfe9523d7f7ca2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/298861
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2023-04-27 14:46:48 +00:00
Konstantin Shcheglov
ea2d6a7659
Issue 52177. Fix rename refactoring for type parameter of a class.
...
It does not work for function / method type parameters though.
Bug: https://github.com/dart-lang/sdk/issues/52177
Change-Id: I51ae5379425e156640ae32d0cea6fd59cdc62b15
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/298960
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Samuel Rawlins <srawlins@google.com >
2023-04-27 04:51:26 +00:00
Konstantin Shcheglov
97a762b083
Remove debug output from analysis_server/ tests.
...
Change-Id: Ia358d4f51c605ca66e5111769d1f716559251f63
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/298780
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-04-26 19:58:48 +00:00
Brian Wilkerson
03270f748b
Convert the tests for the combinator contributor
...
Change-Id: Ic165bf7fed1f045f489998ecf9dec9edbd516274
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/298480
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2023-04-26 18:42:37 +00:00
Konstantin Shcheglov
8d2bafa624
Use OpenUriNotificationSender to replace separate flag and sending method.
...
If the sender is not `null`, then we can send.
No need for a flag, and assert() in the sending method.
If the sender is `null`, then the sending code will not able to invoke it.
Types FTW :-)
Change-Id: I7d153ba014c578a73dce2eab28aceedbb8814711
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/298440
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-04-26 18:17:37 +00:00
Danny Tuppeny
a0d6b2daed
[analysis_server] Switch some code from package:collection to Dart 3 APIs
...
- change forEachIndexed to `.indexed`
- remove `package:collection` imports for files only using `.firstOrNull`, `.singleOrNull`, `.lastOrNull` that is now available in `dart:core`
- switch from `Pair` to records
- use switch expressions
Change-Id: Id1ae22db427b4cd955f26e0d6c852944a540a05f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/298061
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2023-04-25 14:28:26 +00:00
Danny Tuppeny
528c75acd2
[analysis_server] Support folding switch statements/expressions/cases
...
Fixes https://github.com/Dart-Code/Dart-Code/issues/4506 .
Change-Id: Idd5924d04e9ffffc49f088ca6884393ea72e9bea
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/298120
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2023-04-25 14:18:04 +00:00
Danny Tuppeny
c4d2d2d7c2
Reland "[analysis_server] Use fixDataYamlFolder constant instead of string literals"
...
This is a reland of commit ccb02fa8fc
Original change's description:
> [analysis_server] Use fixDataYamlFolder constant instead of string literals
>
> Follow-up from https://dart-review.googlesource.com/c/sdk/+/296801 .
>
> Change-Id: I72ea8a42ec64c4bd6c6cee021a1464167ec368e6
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296862
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
> Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Change-Id: I202392de3444556dc2baa9ed9e1b82c3a1ede4aa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/298060
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2023-04-25 14:17:00 +00:00
Danny Tuppeny
86e3305538
Reland "[analysis_server] Analyze fix data in fix_data folder"
...
This is a reland of commit bbacf39e9c
Original change's description:
> [analysis_server] Analyze fix data in fix_data folder
>
> Fixes part of https://github.com/dart-lang/sdk/issues/52126 .
>
> Change-Id: Ib4bd7830a2f644eacedccd375c7c8dc60f040d33
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296801
> Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Change-Id: I571c1e4f87fdf0095d003d496f3c5d88e5cf0ff8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/297940
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-04-25 00:08:54 +00:00
Konstantin Shcheglov
39cb6acb88
Issue 52149. Fix to support rename refactoring for declared identifier with LSP.
...
Bug: https://github.com/dart-lang/sdk/issues/52149
Change-Id: Ia4c5c564cc44583741722c658389ea674a5643c3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/297900
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2023-04-24 22:04:39 +00:00
Konstantin Shcheglov
887e6da4a5
Issue 52150. Support for unused variable patterns in logical-and patterns.
...
Bug: https://github.com/dart-lang/sdk/issues/52150
Change-Id: I9efb2f8ece0ccb3d3c2e276ff708a671dea80fa3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/297841
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-04-24 21:53:38 +00:00
Konstantin Shcheglov
a868a5bfa6
Issue 52148. Disable invert 'if' when 'case'.
...
Disable a few assists that require 'patterns', when it is not enabled.
Bug: https://github.com/dart-lang/sdk/issues/52148
Change-Id: I3c3816f4a944c59698543e37f15e024249545952
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/297880
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Phil Quitslund <pquitslund@google.com >
2023-04-24 21:16:48 +00:00
Konstantin Shcheglov
2cdfc05568
Issue 52146. Fix ConvertToIfCaseStatementChain for a case without statements.
...
Bug: https://github.com/dart-lang/sdk/issues/52146
Change-Id: I2947111a0e1a4c6e739bda851f1f91c9637a745a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/297420
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Phil Quitslund <pquitslund@google.com >
2023-04-24 19:28:56 +00:00
Danny Tuppeny
d3460e0855
[analysis_server] Don't produce diagnostics for empty/commented fix_data files
...
Previous changes to analyze the fix_data/**.yaml files failed to roll into Flutter because it has a template for these files that contains only comments.
See https://dart-review.googlesource.com/c/sdk/+/297320 and https://github.com/flutter/flutter/pull/125363 .
Change-Id: I098a5b336371bab7f80ac84c556efe118c70e74f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/297340
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2023-04-24 18:47:21 +00:00
Brian Wilkerson
e8e4980b4c
Rewrite keyword contributor tests
...
I did not change any of the test cases. I did change the names of the
tests to be more consistent, and in the process I found a couple of
tests where the test code was identical, so I deleted the duplicates.
I expect that there will be more cleanup that we'll want to do after
all of the contributor tests have been converted and merged together,
but I wanted this CL to be as straightforward as possible given its
size.
Change-Id: I2cbb6b5c0718fbbc36da521ee3c4fc7d00c36dcb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/297720
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2023-04-24 17:36:22 +00:00
Brian Wilkerson
71d4e1478e
Clean up some tests to make conversion of contributor tests easier
...
Change-Id: I801970b4b88b883b2219badcefb7e1c84517d592
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/297780
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2023-04-24 17:35:27 +00:00
Danny Tuppeny
d75a4e162e
[analysis_server] Update LSP generated classes to latest published version of the spec
...
No functional changes here but there have been some refactors inside the meta model that required some minor tweaks (URI moved from a type alias to string to a spec-defined base type).
I also improved the handling of some type references in the comments we bring in so they're clickable in more places.
Change-Id: I7c725d01b6d7bc0925979b8118dbfd8952f78724
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/297482
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-04-24 15:09:20 +00:00
Zach Anderson
e34daa818b
Revert "[analysis_server] Analyze fix data in fix_data folder"
...
This reverts commit bbacf39e9c .
Reason for revert: Causing flutter/engine to fail to roll into flutter/flutter. See https://github.com/flutter/flutter/pull/125363 .
Original change's description:
> [analysis_server] Analyze fix data in fix_data folder
>
> Fixes part of https://github.com/dart-lang/sdk/issues/52126 .
>
> Change-Id: Ib4bd7830a2f644eacedccd375c7c8dc60f040d33
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296801
> Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Change-Id: I109a4b2c596ad22d73eaf0ac3e25f53a35ba5e28
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/297320
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Zach Anderson <zra@google.com >
2023-04-22 22:10:12 +00:00
Zach Anderson
7575e2c5be
Revert "[analysis_server] Use fixDataYamlFolder constant instead of string literals"
...
This reverts commit ccb02fa8fc .
Reason for revert: Blocking revert in https://dart-review.googlesource.com/c/sdk/+/297320
Original change's description:
> [analysis_server] Use fixDataYamlFolder constant instead of string literals
>
> Follow-up from https://dart-review.googlesource.com/c/sdk/+/296801 .
>
> Change-Id: I72ea8a42ec64c4bd6c6cee021a1464167ec368e6
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296862
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
> Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Change-Id: I8ed39fc343b9121c40de83038e97c43cac669ca1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/297321
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Zach Anderson <zra@google.com >
2023-04-22 21:22:47 +00:00
Konstantin Shcheglov
b5d63cb67f
Add quick assist to convert SwitchStatement (with patterns) into if-case chain.
...
Bug: https://github.com/dart-lang/sdk/issues/52068
Change-Id: Ia20b943dfc5212764f31cd94f4f8cce8755628bc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/297140
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Phil Quitslund <pquitslund@google.com >
2023-04-21 22:07:02 +00:00
Konstantin Shcheglov
529adda42e
Issue 52131. Find implicit constructor invocations from other constructors.
...
Bug: https://github.com/dart-lang/sdk/issues/52131
Change-Id: I7f28e4664f18196f978cb9dd38f878b1240d46a1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/297080
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-04-21 22:04:16 +00:00
Konstantin Shcheglov
81ab76124f
Support for pattern variables in RemoveUnusedLocalVariable.
...
Change-Id: I67ed0892a96f911bfae7a4fda91e2e6e55927fc9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296761
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Phil Quitslund <pquitslund@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2023-04-21 19:18:59 +00:00
Paul Berry
5d7dd58d41
Ignore TODO in pkg/analyzer and pkg/analysis_server.
...
The analyzer team has decided to adopt the convention of using `TODO`
comments to document long term issues that should persist in the
codebase, and `FIXME` comments to document short term issues that need
immediate attention. They may even consider adding a presubmit hook
to ensure that `FIXME` comments are only used during local
development.
Accordingly, it makes sense to suppress `TODO` comments from being
surfaced to the IDE "problems" view (since there are hundreds of them,
and they're not immediately actionable). This makes VSCode's
"problems" view much more usable in "tree" mode.
Change-Id: I11a0c59132fb98c1c86fb4adf22d1fdf3b547c80
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/295662
Commit-Queue: Paul Berry <paulberry@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2023-04-21 19:16:04 +00:00
Danny Tuppeny
ccb02fa8fc
[analysis_server] Use fixDataYamlFolder constant instead of string literals
...
Follow-up from https://dart-review.googlesource.com/c/sdk/+/296801 .
Change-Id: I72ea8a42ec64c4bd6c6cee021a1464167ec368e6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296862
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2023-04-21 18:50:50 +00:00
Paul Berry
3516c86ae5
Add dependency overrides for pkg/analysis_server
...
These dependency overrides prevent pub from getting confused about the
fact that our SDK development is in a mono-repo; that in turn will
allow unit tests to be run from inside vscode using the standard test
integration (see https://github.com/Dart-Code/Dart-Code/issues/4502 ).
Change-Id: I8ea709984b03927e67f119d147338203d7e80811
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296980
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Paul Berry <paulberry@google.com >
2023-04-21 18:43:33 +00:00
Danny Tuppeny
ee178b273b
[analysis_server] Switch TypeMemberContributor to using InheritanceManager3
...
Fixes https://github.com/Dart-Code/Dart-Code/issues/4499 .
Change-Id: I339f975894f6734c634df5dbc2df9695ecc999a1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296580
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2023-04-21 17:31:12 +00:00
Danny Tuppeny
bbacf39e9c
[analysis_server] Analyze fix data in fix_data folder
...
Fixes part of https://github.com/dart-lang/sdk/issues/52126 .
Change-Id: Ib4bd7830a2f644eacedccd375c7c8dc60f040d33
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296801
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-04-21 15:18:56 +00:00
Konstantin Shcheglov
9070c7baf1
Don't suggest UseCurlyBraces for else-if
...
Change-Id: I2e29565fe67fbe8e412306ef0b8fd3c3188a970b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296661
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-04-20 19:37:37 +00:00
Ahmed Ashour
6e821873fd
[analysis_server] renameParameter data-driven fix
...
to handle a method with a diagnostic
Fixes #51198
Change-Id: I6a1921747912318d81121d58c88fccc35d1f809a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/282261
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Keerti Parthasarathy <keertip@google.com >
2023-04-20 16:22:54 +00:00
Konstantin Shcheglov
e8622f2d63
Issue 52059. Don't suggest final/var in ObjectPattern in ForEachPartsWithPattern, suggest getters instead.
...
Bug: https://github.com/dart-lang/sdk/issues/52059
Change-Id: If5e1c40fa75735077b2b77a5941d16fe2c767f3e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296501
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2023-04-20 16:14:58 +00:00
Konstantin Shcheglov
1df4267a7e
Issue 47562. Suggest only *.dart files in 'package:' URIs.
...
Bug: https://github.com/dart-lang/sdk/issues/47562
Change-Id: I4f575bca1377b8f5065d4c4ff95f326b6a2a168b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296442
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Samuel Rawlins <srawlins@google.com >
2023-04-20 01:28:53 +00:00
Brian Wilkerson
2da2520bd6
Stop suggesting methods in object patterns
...
Fixes: 52058
Change-Id: I031fcd2b48975729cca48f640c3d86f5d2cfc0b0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296420
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2023-04-20 00:52:20 +00:00
pq
76f76b05bb
use existing CorrectionUtils instance
...
Change-Id: Ia9c20fb70cd665b6c4a024c2f83d6e7ca5b0220a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296422
Commit-Queue: Phil Quitslund <pquitslund@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2023-04-20 00:05:02 +00:00
Konstantin Shcheglov
6dcca7824a
Produce InvertIfStatement only when both then/else branches are Block(s).
...
Other cases are outliers and nobody actually want it there.
Specifically, the way it works for if-then-elseIf does not make sense.
Change-Id: I8d16e689e057fa79ecfaa2c3155086cf36f1954c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296406
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Phil Quitslund <pquitslund@google.com >
2023-04-19 23:21:36 +00:00
Konstantin Shcheglov
6a50756f98
Remove 'Introduce new local with tested type' assist.
...
If the type checked expression is a local variable, it is useless.
The variable is already type promoted.
If the type checked expression is not a local variable, it produces
code that has a compile-time error because of downcard, which does
not work anymore with null safety.
Even generating `final x = expression as MyType` would be bad IMHO.
Unproven type casts are dangerous.
What the user should do, it to extract into a local variable, and
type check it. Or use patterns. But this is a different story.
Change-Id: Ifd3dc71894d17c5a07b7f1389a8143363697eda2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296384
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-04-19 21:53:09 +00:00
pq
4451d5d9f5
follow ups from https://dart-review.googlesource.com/c/sdk/+/296066
...
(The last change was prematurely merged.)
Change-Id: Idc161ef596fa43927cf7eda223635a798d3292af
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296402
Commit-Queue: Phil Quitslund <pquitslund@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-04-19 20:13:03 +00:00
pq
45ec8be7aa
reference rewriting for destructured object pattern variables
...
I'll do some tidying up and restructuring when I add similar support for records...
Change-Id: I4124cdc5e6ecb12e54ab4570636e1f8cc9afa6c3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296066
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Phil Quitslund <pquitslund@google.com >
2023-04-19 18:59:59 +00:00
Konstantin Shcheglov
ac1bdebff7
Support for converting 'if' statements with bool conditions into patterns.
...
Bug: https://github.com/dart-lang/sdk/issues/52068
Change-Id: I187b3e3cad66eff7a266478df0c09ffb3d642e34
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296067
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-04-19 17:24:54 +00:00
Konstantin Shcheglov
dc34fe9f86
Deprecate IfElement/IfStatement.condition, use 'expression'.
...
Change-Id: If43b4b71a21fd256ce8d1367d4b233e1cff764b9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296122
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Nate Bosch <nbosch@google.com >
Reviewed-by: Samuel Rawlins <srawlins@google.com >
2023-04-19 17:17:28 +00:00
Konstantin Shcheglov
7880fd4ce5
Remove UnwrapIfBody assist.
...
After using DAS with it for a few days, I find it more distracting
than useful.
Change-Id: I20da35e06958c79a6d458546937b616d45b0c909
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296281
Reviewed-by: Phil Quitslund <pquitslund@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2023-04-19 16:56:43 +00:00
Konstantin Shcheglov
c948d37f97
Add CONVERT_TO_SWITCH_STATEMENT for if-case statement.
...
Bug: https://github.com/dart-lang/sdk/issues/52068
Change-Id: Ia561a8e711272cfcae690a4de1ea3e39906bef47
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/295724
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-04-18 21:26:02 +00:00
Janice Collins
7c1e2fee70
Fix analytics logic to report on analysis complete transitions.
...
Bug: https://github.com/dart-lang/sdk/issues/52089
Change-Id: If9fe7d702cd70c3e8804a59e47870d6aad7cf680
Fixes: https://github.com/dart-lang/sdk/issues/52089
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/296023
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Auto-Submit: Janice Collins <jcollins@google.com >
Commit-Queue: Janice Collins <jcollins@google.com >
Commit-Queue: Keerti Parthasarathy <keertip@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Keerti Parthasarathy <keertip@google.com >
2023-04-18 20:48:58 +00:00
pq
fffd7e8c6f
support destructuring local object pattern variable declarations
...
See: https://github.com/dart-lang/sdk/issues/52025
Change-Id: I6dc5d2f0c8391d8ad719c23b47aadeac9a8ab969
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/295722
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Phil Quitslund <pquitslund@google.com >
2023-04-18 20:47:57 +00:00
Sam Rawlins
008ef8c1a9
Bump linter
...
Change-Id: If108d01736a6fb7a07e4c894752934ea9fc952bf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/295802
Reviewed-by: Phil Quitslund <pquitslund@google.com >
Commit-Queue: Samuel Rawlins <srawlins@google.com >
2023-04-18 19:25:48 +00:00