Konstantin Shcheglov
4e8e1e2e04
Improve search for constructors and import elements.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1778363003 .
2016-03-10 14:57:42 -08:00
Konstantin Shcheglov
5271cd3259
Fix for indexing synthetic elements.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1779233002 .
2016-03-10 10:57:08 -08:00
Brian Wilkerson
ef1c632679
Clean up some warnings (issue 25964)
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1778663006 .
2016-03-09 17:32:49 -08:00
Konstantin Shcheglov
4d48fa56d0
Listen for context add/remove and unit invalidation to update the index.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1783503004 .
2016-03-09 14:52:19 -08:00
Konstantin Shcheglov
00b6f98166
Separate index objects for each analysis context.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1778113002 .
2016-03-09 13:24:12 -08:00
Konstantin Shcheglov
5b117e9e18
Use the fact that some index lists are sorted.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1776143002 .
2016-03-08 13:43:43 -08:00
Konstantin Shcheglov
b9ee5c20eb
Implement SearchEngine.searchMemberReferences().
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1768353002 .
2016-03-07 13:41:12 -08:00
Konstantin Shcheglov
f2111c2497
Search for direct and indirect subclasses.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1770083002 .
2016-03-07 11:30:44 -08:00
Konstantin Shcheglov
2293a22b7f
Implement searchMemberDeclarations() / searchTopLevelDeclarations().
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1770953002 .
2016-03-07 11:14:05 -08:00
Konstantin Shcheglov
8dbbb55a2e
Implement search for names defined in index.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1771903002 .
2016-03-07 10:40:01 -08:00
Konstantin Shcheglov
28f8a64210
Remove SearchEngine.searchElementDeclarations().
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1769063002 .
2016-03-07 09:57:15 -08:00
pq
f506639391
Back out ignore quick-fix.
...
As per, https://github.com/dart-lang/sdk/issues/25926 , we'll migrate this behavior to the IDE side.
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1770733002 .
2016-03-07 09:25:28 -08:00
Konstantin Shcheglov
9f448d00fe
Support for searching of libraries, import prefixes and import elements.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1767113002 .
2016-03-07 08:34:34 -08:00
Konstantin Shcheglov
ec906bf12b
Implement search for local elements.
...
We don't use Index for them, instead of visit coresponding AST subtrees
and add SearchMatch(es).
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1760243004 .
2016-03-05 07:50:11 -08:00
Konstantin Shcheglov
aa7bea0d6a
New SearchEngine implementation - references only.
...
And only for the elements for which we have information in the index.
References to other kinds of elements - local variables, parameters,
etc can be implemented using AST visitors. To be implemented in next CLs.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1763133002 .
2016-03-04 12:08:04 -08:00
pq
1f0a0b5a5c
Quick fix to ignore a specific error ( #25915 ).
...
See: https://github.com/dart-lang/sdk/issues/25915
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1764853002 .
2016-03-04 11:11:06 -08:00
Konstantin Shcheglov
adcf43968f
Ignore not ClassDeclaration target of an unknown method invocation.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1764743002 .
2016-03-03 11:23:32 -08:00
pq
8cd8d219ca
Handle incomplete rule options gracefully.
...
Net-net: this fixes the case where we get storms of UNDEFINED_LINT_WARNINGs when parsed yaml nodes have null values.
BUG=
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org/1752183003 .
2016-03-03 09:58:30 -08:00
Konstantin Shcheglov
80531d974d
Make SearchMatch usable for the new index - remove the element field.
...
The 'element' is still accessible, but as a computed property.
In many cases we don't need to know the containing element, and need
only the unit source, or the LibraryElement. So, by computing it on
demand we may save some time and make SearchMatch usable with the
new index - where we don't know the Element.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1764553002 .
2016-03-03 08:40:57 -08:00
Konstantin Shcheglov
c9e82c7e67
Fill the new index in Analysis Server.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1749333004 .
2016-03-02 14:00:17 -08:00
Konstantin Shcheglov
faf59757c8
Optimize ElementId search, rename the test file.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1755313002 .
2016-03-02 13:02:52 -08:00
Konstantin Shcheglov
6d1bf8b0fa
Initial new index implementation.
...
Only getRelations() is implemented, and maybe not the most performant
implementation yet.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1755263002 .
2016-03-02 12:05:05 -08:00
pq
d223676c7f
Fix @override quick-fix to respect doc comments.
...
BUG=
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org/1751163002 .
2016-03-01 13:01:57 -08:00
Konstantin Shcheglov
e225e619cd
Issue 25827. Don't propose to remove the type of an incomplete variable declaration.
...
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/25827
Review URL: https://codereview.chromium.org/1753893002 .
2016-03-01 12:20:24 -08:00
pq
549a7a4d00
Quick-fix for annotate_overrides lint ( #25416 ).
...
An interim approach to shoe lint-awareness into the dart FixProcessor. Once we have a a shareable processor base class we can migrate these bits into a dedicated LintFixProcessor contributed by the LintServerPlugin.
See: https://github.com/dart-lang/sdk/issues/25416
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1736383002 .
2016-02-26 14:23:05 -08:00
Konstantin Shcheglov
44fc8ec8f3
Make add/remove type Quick Assists less obtrusive.
...
It is nice to have them until after the variable name, but not OK to
have them on initializers, especially when the initializer has a
closure.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1737563002 .
2016-02-25 08:20:23 -08:00
Konstantin Shcheglov
026748533f
Add @override when implement missing overrides for fields.
...
This makes the code generated by DAS closer to the code generated by
the IDEA plugin.
R=brianwilkerson@google.com , jwren@google.com
BUG=
Review URL: https://codereview.chromium.org/1705283002 .
2016-02-17 13:30:23 -08:00
Brian Wilkerson
71e7ed86c0
Move scanner out of generated and clean up imports
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1693083004 .
2016-02-14 07:48:44 -08:00
danrubel
6188d18eec
rework completion request resolve imports
...
* rename resolveDirectives --> resolveImports
* rework resolveImports to return list of ImportElement rather than Directive
* new resolveDirectives test
* set priority source during completion tests
This and https://codereview.chromium.org/1685653002/ fixes https://github.com/dart-lang/sdk/issues/25690
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org/1693933002 .
2016-02-13 23:15:52 -05:00
Konstantin Shcheglov
20d31ea8c3
Compute ElementImpl.hashCode using location.
...
We need this to ensure that Impl and Handle have the same hash.
This reduces number of shared test failures from 267 to 67 when using
SDK summaries.
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org/1677213003 .
2016-02-09 07:06:22 -08:00
Konstantin Shcheglov
960b9c3409
Issue 25650. Generate unique parameter names when create a method or function.
...
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/25650
Review URL: https://codereview.chromium.org/1664423002 .
2016-02-04 13:59:27 -08:00
Konstantin Shcheglov
fb520065b8
Issue 25686. Add 'var' for untyped unimplemented fields.
...
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/25686
Review URL: https://codereview.chromium.org/1668273002 .
2016-02-04 13:32:49 -08:00
Konstantin Shcheglov
4239eadd74
WEB-20151. Include type arguments into type proposals.
...
R=brianwilkerson@google.com
BUG= https://youtrack.jetbrains.com/issue/WEB-20151
Review URL: https://codereview.chromium.org/1661763002 .
2016-02-02 18:36:11 -08:00
Konstantin Shcheglov
b0c06a5827
Issue 25616. Support for extracting methods with function-typed parameters.
...
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/25616
Review URL: https://codereview.chromium.org/1655353002 .
2016-02-02 14:32:02 -08:00
Konstantin Shcheglov
86106d7a6d
Issue 25623. When adding the 'async' modifier, change the return type.
...
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/25623
Review URL: https://codereview.chromium.org/1652963003 .
2016-02-01 10:35:47 -08:00
Konstantin Shcheglov
3f7a21bc0e
Issue 25622. Quick fix for 'async-for'.
...
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/25622
Review URL: https://codereview.chromium.org/1650853002 .
2016-02-01 08:03:55 -08:00
Konstantin Shcheglov
fe7a48d6c7
Isse 25404. When remove a method during inlining, remove also leading empty lines.
...
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/25404
Review URL: https://codereview.chromium.org/1628623002 .
2016-01-22 19:40:38 -08:00
Konstantin Shcheglov
5237561075
Issue 25404. 'Inline Method' should update implicit 'this' and class references.
...
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/25404
Review URL: https://codereview.chromium.org/1629533003 .
2016-01-22 17:21:57 -08:00
Konstantin Shcheglov
53b2815ad8
Ignore 'expr is' outside of a statement.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1609883002 .
2016-01-19 13:20:38 -08:00
Konstantin Shcheglov
e1c6faceb5
Issue 25316. Quick Fix for removing 'final' keyword.
...
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/25316
Review URL: https://codereview.chromium.org/1545323002 .
2015-12-27 13:19:41 -08:00
Konstantin Shcheglov
78ae012d2d
Issue 25313. Skip constructor names and named expressions.
...
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/25313
Review URL: https://codereview.chromium.org/1547113002 .
2015-12-27 12:05:05 -08:00
Dan Rubel
e5bbeddf4d
completion performance measurement for local status page
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1536083002 .
2015-12-19 11:12:45 -05:00
Dan Rubel
43ee7b5bc9
move OpType into dart folder
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1523243006 .
2015-12-19 11:11:04 -05:00
pq
1f8eddcc21
Cache element docs (and add to completions) [ #23694 ].
...
This does away with the expensive call to `computeDocumentationComment` in favor of cached comments. Notably this makes adding doc content to code completion proposals performant (and so is done here). It should also make `dartdoc` *much* faster for doc generation since there are no more trips to disk to fetch comments for elements (still needed for source though).
For more on the desire for docs in completions see here: https://github.com/dart-lang/sdk/issues/23694
R=brianwilkerson@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org/1534043002 .
2015-12-17 21:07:42 -08:00
Dan Rubel
fbaba56375
move DartCompletionSorter to dart specific contributor
...
consolidate common test code
remove duplicate test
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1539693002 .
2015-12-17 17:54:29 -05:00
Dan Rubel
4ee5173f42
move ReplacementRange into dart specific contributor
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1531383002 .
2015-12-17 16:24:49 -05:00
Dan Rubel
b3fa2629bf
remove CompletionCache and obsolete tests, and cleanup imports
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1533973002 .
2015-12-17 16:00:34 -05:00
Dan Rubel
5e128e2544
suggest IDENTIFIER not INVOCATION for dartdoc refs
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1530393004 .
2015-12-17 11:00:15 -05:00
Dan Rubel
6d5efd3175
remove unused DartCompletionCache
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1536683003 .
2015-12-17 10:58:49 -05:00
Dan Rubel
0c6fb170dc
Do not suggest loop variable when completing expression in ForEachStatement
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1534793002 .
2015-12-17 10:57:51 -05:00