Commit Graph

87 Commits

Author SHA1 Message Date
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
Devon Carew 47a861ca85 Add two new element types to the protocol.
Bug:
Change-Id: I5a60081d7c8500590bbabb9ee6dce74fa611b0a3
Reviewed-on: https://dart-review.googlesource.com/14883
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2017-10-18 19:02:47 +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 37042bb59b Add an integration test for kythe support with bug fixes
R=jwren@google.com

Review-Url: https://codereview.chromium.org/3006693002 .
2017-08-28 10:07:04 -07: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 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
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 c6b206a2d9 Clean up after some recent code changes
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/3009513002 .
2017-08-24 10:01:11 -07:00
Brian Wilkerson e8010e4a44 Enhance NavigationMixin to handle notifications
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/3008443002 .
2017-08-24 07:44:51 -07:00
Brian Wilkerson 0a50effce5 Add minimal support for sending notifications
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/3003573002 .
2017-08-23 13:26:59 -07:00
Brian Wilkerson ebe2ce681e Fix ClassElement.allSupertypes to include interfaces of mixins (issue 29767)
R=jmesserly@google.com

Review-Url: https://codereview.chromium.org/3000183002 .
2017-08-18 07:30:05 -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
Brian Wilkerson 579a032564 Add kythe support to plugins and format the spec files
R=jwren@google.com

Review-Url: https://codereview.chromium.org/2994103002 .
2017-08-10 11:24:40 -07:00
Brian Wilkerson 1abf749b77 Fix more uses of generic method comments and increment the data version (TBR)
Review-Url: https://codereview.chromium.org/2996653002 .
2017-08-08 11:27:02 -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 8bbf373a5e Remove the analysus.reanalyze request from the plugin API
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2988743002 .
2017-07-25 12:10:52 -07:00
Brian Wilkerson 8a275e6df8 Add utility method to SubscriptionManager
R=mfairhurst@google.com

Review-Url: https://codereview.chromium.org/2983913002 .
2017-07-21 07:24:55 -07:00
Konstantin Shcheglov 00d5012906 Format analyzer, analysis_server, analyzer_plugin, front_end and kernel with the latest dartfmt.
...instead of mixing formatting with actual changes in many CLs.

R=ahe@google.com, paulberry@google.com, sigmund@google.com
BUG=

Review-Url: https://codereview.chromium.org/2975253002 .
2017-07-13 16:28:18 -07:00
Konstantin Shcheglov 19265a82b4 Move findElementsByName() into shared analyzer/element_search.dart file.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2965133003 .
2017-07-06 11:51:17 -07:00
Konstantin Shcheglov 6323bedc58 Stop depending on LabelElement(s) to be reported in visitChildren().
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2973093002 .
2017-07-06 11:28:06 -07:00
danrubel 8cca317118 fix completion test expectation for fasta scanner
Review-Url: https://codereview.chromium.org/2972063002 .
2017-07-06 14:07:49 -04:00
Brian Wilkerson 75504c2b25 Remove references to AnalysisDriver from the plugin mixin classes
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2970203002 .
2017-07-06 09:07:10 -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 6248df44a6 Add the tests of the spec generator to the unit tests
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2966623003 .
2017-06-30 10:08:51 -07:00
Brian Wilkerson 4749014b06 Remove an unused request and the associated type
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2964113003 .
2017-06-30 09:44:59 -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
Brian Wilkerson 0ea6b89770 Fix a lint
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2955113002 .
2017-06-27 08:36:59 -07:00
Konstantin Shcheglov 9775892109 Attempt to fix DartEditBuilderImplTest on Windows.
TBR

R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2958803003 .
2017-06-26 14:39:41 -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 24996fbfe7 Add support to pass the location of the analysis options file to plugins
R=mfairhurst@google.com

Review-Url: https://codereview.chromium.org/2947743002 .
2017-06-20 07:41:03 -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
Brian Wilkerson 0e6586492d Make common tests consistent
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2925273003 .
2017-06-09 08:40:16 -07:00
Brian Wilkerson 624f4d8b3d Add tests for recently added mixins and improve plugin tests
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2932553004 .
2017-06-09 07:27:16 -07:00
Brian Wilkerson b9529da60e More test fixed (TBR)
Review-Url: https://codereview.chromium.org/2925163002 .
2017-06-07 14:04:29 -07:00
Brian Wilkerson 0d315af354 Try again to fix the bots (TBR)
Review-Url: https://codereview.chromium.org/2926173002 .
2017-06-07 13:15:40 -07:00
Brian Wilkerson dce88b45e7 Fix test tests under windows (TBR)
Review-Url: https://codereview.chromium.org/2930723003 .
2017-06-07 10:01:20 -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 bb143b38c1 Fix another windows-specific test bug (TBR)
Review-Url: https://codereview.chromium.org/2929453002 .
2017-06-06 09:12:22 -07:00
Brian Wilkerson c0b327aadd Fix tests under windows (TBR)
Review-Url: https://codereview.chromium.org/2924843002 .
2017-06-06 08:12:31 -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
Devon Carew 8df017b670 Re-gen analysis server specs.
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2911783002 .
2017-05-27 12:42:17 -07:00
Brian Wilkerson 7f5e1f260f Add a getNavigation request for plugins
R=mfairhurst@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2908523002 .
2017-05-25 10:51:24 -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