Commit Graph

119 Commits

Author SHA1 Message Date
Konstantin Shcheglov 456890cd2c Enable completion in AssertInitializer.
R=brianwilkerson@google.com, danrubel@google.com

Bug: https://github.com/flutter/flutter-intellij/issues/1101
Change-Id: Id17a701cac0e98afc373cf89089916cf5f983cff
Reviewed-on: https://dart-review.googlesource.com/40472
Reviewed-by: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-02-12 01:01:31 +00:00
pq 06614a7b19 Proposed API for optionally building override cc displayText.
Change-Id: Ic3ea3317da1220c7d396348ae93e40ab672ecc59
Reviewed-on: https://dart-review.googlesource.com/40500
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-02-11 18:01:13 +00:00
Konstantin Shcheglov f6febf35b1 Don't write EOLs before/after new class members.
R=brianwilkerson@google.com

Change-Id: Ie70423802985fc762fea2cb55a2936a3e3f3add0
Reviewed-on: https://dart-review.googlesource.com/39851
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-02-08 00:40:11 +00:00
Brian Wilkerson 39448ff521 Improve creation of overriding methods (issues 30730 and 30759)
Change-Id: I96a06f6ad2646d4590804c2e5d8d7f6ab95dbd74
Reviewed-on: https://dart-review.googlesource.com/39844
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-02-07 22:16:00 +00:00
Brian Wilkerson 740a0e751e Rework part of DartChangeBuilder to deal better with type parameters (issue 31199)
Change-Id: I1946e6070c0dcffaa02f61b9c7f857168a050a27
Reviewed-on: https://dart-review.googlesource.com/38483
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-02-05 18:21:36 +00:00
Brian Wilkerson 0916cca7d2 Do not convert return type of enclosing function when adding async to nested closure (issue 30901)
Change-Id: I8293b7784f71d4ff7846a0cca6efbfa69847b7da
Reviewed-on: https://dart-review.googlesource.com/37646
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-01-30 21:57:10 +00:00
Dan Rubel 1231e90fee Code complete identifiers not directly referenced by the analyzer AST
The fasta parser sometimes "drops" unexpected tokens during recovery.
When this happens, the dropped or skipped token is not reported to
the listeners, and thus does not become part of the analyzer's AST.
These tokens are still in the token stream, but will not be found
by the existing CompletionTarget mechanism.

For example, the fasta parser parses
'if (v i) {}' as 'if (v) {}' and drops the 'i' token.

This CL introduces a new CompletionTarget.droppedToken field.
If a keyword or identifier has been dropped by the parser,
but overlaps the code completion offset, then that token
is placed into this new field.

In the example above, when code completing the 'i',
the CompletionTarget will now be
containingNode = '(v)'
entity         = ')'
droppedToken   = 'i'

Change-Id: I15e43529ab4a72de9500c521be278fa13ae68d99
Reviewed-on: https://dart-review.googlesource.com/31285
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2017-12-22 21:55:35 +00:00
Lasse R.H. Nielsen 847cf039f0 Lower-case Isolate.{IMMEDIATE,BEFORE_NEXT_EVENT}.
Change-Id: I9a7071a7f6dc61b502f5aa9bc9bc2455247a7513
Reviewed-on: https://dart-review.googlesource.com/22984
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Florian Loitsch <floitsch@google.com>
2017-11-24 12:44:17 +00:00
Brian Wilkerson c6c7580c92 Add error detection and reporting for errors related to plugins
Change-Id: If17e88b64022fe71c992c5867c80263c0e6b953b
Reviewed-on: https://dart-review.googlesource.com/18781
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-05 19:21:07 +00:00
Brian Wilkerson b3439aa20b Guard against broken code (issue 31023)
Change-Id: I9f53abb1257a3ffc86dc4bf46e2591c7f936d1fe
Reviewed-on: https://dart-review.googlesource.com/11940
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2017-10-06 17:28:04 +00:00
Konstantin Shcheglov e925eb125c Fix type code for typedefs after switching to GenericTypeAliasElement.
https://dart-review.googlesource.com/c/sdk/+/9421

R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: I25d60ff904f15e6eeefff97b08ba9870d69733db
Reviewed-on: https://dart-review.googlesource.com/9460
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-09-29 04:27:53 +00:00
Konstantin Shcheglov 455984bbf9 Fix fuzzy arrow warnings in analyzer and analysis_server.
There is one warning which I'd like to fix in a separate CL.

The rest is because of package:test predicate().
I think Leaf fixed it in https://github.com/dart-lang/matcher/commit/3625f13698346576da0f5baf44e95abc9c56fb49


R=brianwilkerson@google.com

Bug:
Change-Id: I060f7ced55dbcc460185916251c47ebbd5c838d3
Reviewed-on: https://dart-review.googlesource.com/3404
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2017-09-06 00:26:18 +00:00
Brian Wilkerson 608bf972b0 Add folding support for plugins and update the main tutorial page
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/3004733002 .
2017-08-28 08:05:37 -07:00
Brian Wilkerson d1a2a43d54 Add plugin support for occurrences (and fix typo)
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/3006703002 .
2017-08-28 08:04:42 -07:00
Brian Wilkerson 86918d713b Add SourceRange support to navigation collector
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/3002343002 .
2017-08-27 12:31:13 -07:00
Brian Wilkerson dd00fc7750 Add support for highlights notification
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/3004613002 .
2017-08-25 09:21:36 -07:00
Konstantin Shcheglov dc60566293 Make finalize() async and await adding imports, if any.
There were two flaky tests for assists because sometimes we managed
to execute adding imports before performing checks in the test. And
in this case there was additional (unexpected) empty file edit for
the library file (the only expected file edit was for the part).

R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/3009563002 .
2017-08-24 21:07:34 -07:00
Brian Wilkerson efd4051c7e Add utilities to support the outline notification
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/3002233002 .
2017-08-24 11:59:06 -07:00
Brian Wilkerson d87fcfd233 Correctly update positions when adding edits before them (issue 30444)
R=devoncarew@google.com

Review-Url: https://codereview.chromium.org/2997073002 .
2017-08-16 10:29:26 -07:00
Brian Wilkerson 6f81034a73 Initial Kythe support for plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2997833002 .
2017-08-14 08:24:15 -07:00
Paul Berry e2f77056a5 Eliminate dependencies on pkg/front_end.
The API for pkg/front_end is still in flux so we want to avoid having
any packages depend directly on it (other than analyzer and
back-ends).

This CL re-exports some of the critical pieces of front_end needed by
analyzer clients so that those clients can access them via analyzer,
without having to directly depend on front_end.  It also updates
pkg/analyzer_plugin to make use of those re-exports.

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2993123002 .
2017-08-07 09:46:30 -07:00
Brian Wilkerson adb482002b Prevent exception with isolate failed to start
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2986123002 .
2017-07-28 08:26:31 -07:00
Brian Wilkerson 9a6b134d33 Improve name generation for indexed expressions
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2990793002 .
2017-07-27 07:58:34 -07:00
Brian Wilkerson 0c775ae412 Guard against an AST node with no end token (issue 30089)
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2974533002 .
2017-07-06 12:51:23 -07:00
Brian Wilkerson 6a7b9f441b Convert DartChangeBuilder to use AnalysisSession
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2969833002 .
2017-07-03 08:41:40 -07:00
Brian Wilkerson aadafd1bd5 Use DartEditBuilder to write types and remove dead code
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2972463003 .
2017-07-01 12:03:44 -07:00
Brian Wilkerson 6f4420562c Clean up some code in plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2967683002 .
2017-06-30 10:39:20 -07:00
Brian Wilkerson d1bb233f52 Remove timeStamp from the ChangeBuilder API
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2962223002 .
2017-06-29 13:48:46 -07:00
Konstantin Shcheglov a2f18fdb73 Fixes and tests for adding library imports.
R=brianwilkerson@google.com, pquitslund@google.com
BUG= https://github.com/flutter/flutter-intellij/issues/1119

Review-Url: https://codereview.chromium.org/2955913002 .
2017-06-26 13:16:19 -07:00
Brian Wilkerson 4a10003924 Update the plugin API
R=maxkim@google.com, mfairhurst@google.com

Review-Url: https://codereview.chromium.org/2953093002 .
2017-06-23 12:31:00 -07:00
Brian Wilkerson 5976c78a79 Handle unresolved constructor (issue 29925)
R=danrubel@google.com

Review-Url: https://codereview.chromium.org/2944083002 .
2017-06-20 06:16:23 -07:00
Brian Wilkerson eafc070479 Remove ReplacementRange
R=danrubel@google.com, maxkim@google.com

Review-Url: https://codereview.chromium.org/2946573003 .
2017-06-19 10:15:36 -07:00
Max Kim 382ddb21c3 Refactor: Removed ReplacementRange from test and ReplacementRange from src/. Copied contents of test into lib/utilities and modified test path.
This is needed to expose ReplacementRange outside of test folder for external plugin users to utilize. Reason discussed further in ticket: https://codereview.chromium.org/2934133002/

BUG=
R=brianwilkerson@google.com, danrubel@google.com

Review-Url: https://codereview.chromium.org/2937093002 .
2017-06-16 11:19:27 -07:00
Max Kim e57d9b608f Change to accommade Angular plugin and finalize removal of dependency to analysis_server
BUG=
R=brianwilkerson@google.com, mfairhurst@google.com

Review-Url: https://codereview.chromium.org/2934133002 .
2017-06-13 16:31:39 -07:00
Brian Wilkerson d824acbf71 Update AssistProcessor to use ChangeBuilder
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2928313002 .
2017-06-12 07:28:02 -07:00
Brian Wilkerson 38e2bf5897 Remove invalid imports of analysis_server
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2927923003 .
2017-06-08 10:41:25 -07:00
Brian Wilkerson 6d8b7c8806 Finish refactoring FixProcessor to use ChangeBuilder
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2930793002 .
2017-06-08 07:56:08 -07:00
Brian Wilkerson 91b8b495b3 Add support for fixes
R=maxkim@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2923283002 .
2017-06-08 07:53:06 -07:00
Brian Wilkerson 9b0a98fd42 Port a missed piece to remove invalid reference to analysis_server
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2930723002 .
2017-06-07 10:06:33 -07:00
Brian Wilkerson 456f790aa7 Add support for implementing getAssists in plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2924063002 .
2017-06-07 09:19:47 -07:00
Brian Wilkerson 8a724f7093 Port two completion contributors for use by plugins
R=danrubel@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2927663002 .
2017-06-07 09:14:49 -07:00
Brian Wilkerson a8919b8237 Support a short-hand way to create linked edit groups
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2928723003 .
2017-06-07 09:07:39 -07:00
Brian Wilkerson db0a8a76ae Move CompletionTarget and OpType for use by plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2924703002 .
2017-06-06 07:07:19 -07:00
Brian Wilkerson 691cc1b57a Make navigation support consistent with completion support
R=mfairhurst@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2919293002 .
2017-06-05 12:33:20 -07:00
Brian Wilkerson e8a5e404c3 Move LocalDeclarationVisitor for use by contributors that will be moved to analyzer_plugin
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2918343002 .
2017-06-05 10:24:54 -07:00
Brian Wilkerson 12398ad917 Add completion support for plugins
R=maxkim@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2918613002 .
2017-06-03 09:44:56 -07:00
Brian Wilkerson b5c630426c Update a few more methods in FixProcessor, and fix some bugs in ChangeBuilder
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2916923002 .
2017-06-02 07:36:51 -07:00
Brian Wilkerson f6c6c01211 Update some of the fixes to use ChangeBuilder
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2910683002 .
2017-05-30 08:01:52 -07:00
Brian Wilkerson bbe8892c3b Override ChangeBuilder methods in subclass to specify better type information
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2906373002 .
2017-05-29 17:23:58 -07:00
Brian Wilkerson 6bff3433b7 Add navigation support in plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2902193002 .
2017-05-24 15:06:18 -07:00