Brian Wilkerson
3bf8b18680
More strong mode clean-up in server
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1966453002 .
2016-05-09 13:24:56 -07:00
Konstantin Shcheglov
522eaa9a80
Don't suggest types, getters, etc in 'for (Type ^)'.
...
Variable names should be suggested there.
It does not work for the moment, I'll need to make changes into
VariableNameContributor. But NOT suggesting all the garbage - for me
thi is 90% of the full solution ;-)
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1960783002 .
2016-05-09 12:30:15 -07:00
Konstantin Shcheglov
cf71ab114b
Suggest 'is' in 'if (x is^)'.
...
So, we don't treat is as an expression start, and don't suggest
inappropriate 'while', 'await', etc or identifiers.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1958733002 .
2016-05-06 14:36:43 -07:00
Konstantin Shcheglov
3775d92000
Suggest 'var' and 'final' in intializer of 'for'.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1953893004 .
2016-05-06 13:49:48 -07:00
Konstantin Shcheglov
b73b82221e
Fixes for completing 'for (var v in^)' and 'if (v is^)'.
...
The 'if (v is)' will require more work - we somehow manage to suggest
'if', 'final', 'switch', 'while', but NOT 'is'. But at least identifiers
are now out.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1956813004 .
2016-05-06 13:17:15 -07:00
Konstantin Shcheglov
fef82ec1e8
Update mock SDK 'double'.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1956443003 .
2016-05-05 14:12:53 -07:00
Konstantin Shcheglov
ada9cf43db
Issue 26355. Don't overwrite full index with declarations-only one.
...
What happens in this case is that when we analyze this project with
many (very small) files, we successfully index first declarations
(on computing RESOLVED_UNIT3) and then RESOLVED_UNIT. But when we attempt
to search, we ask for RESOLVED_UNIT, which is flushed. So, we compute it.
In the process we compute RESOLVED_UNIT3, and the listener in
_setupIndexInvalidation() indexes declarations, and overwrites the full
index.
There are several possible solutions, the simplest one is to not
overwrite any existing index information while indexing declarations.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/26355
Review URL: https://codereview.chromium.org/1946353004 .
2016-05-05 07:10:14 -07:00
Brian Wilkerson
08241e9072
More strong mode clean-up
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1947813002 .
2016-05-04 07:42:46 -07:00
Konstantin Shcheglov
fcf97b6c3d
Keep directive annotations while sorting.
...
In one of the previous CLs I sorted unit members and removed the
required @MirrorsUsed annotation.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1938023002 .
2016-05-02 10:09:38 -07:00
Brian Wilkerson
7a9b2a3133
Use null aware operators to clean up code
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1941793002 .
2016-05-02 08:38:46 -07:00
Konstantin Shcheglov
0f0b38dab3
Implement stable resolution of generic types without type arguments to their bounds.
...
R=brianwilkerson@google.com , leafp@google.com
BUG= https://github.com/dart-lang/sdk/issues/26265
Review URL: https://codereview.chromium.org/1927323002 .
2016-04-29 08:25:55 -07:00
Konstantin Shcheglov
470c5de12e
If the expected 'returnType' is 'null', just do not check it.
...
The completion tests are fragile and too sensitive to task model
changes. I have a change that inserts a new analysis result between
RESOLVED_UNIT3 and RESOLVED_UNIT4, and by doing this the next task to
perform resolves types in imported libraries. But in CC test we
continue performing analysis tasks and incidentally resolve something
what the 'null' checks don't expect.
So, I think we need to stop doing these checks.
If needed, we can check something directly by asking the state of some
analysis results from AnalysisContext.
R=jwren@google.com , danrubel@google.com
BUG=
Review URL: https://codereview.chromium.org/1932003002 .
2016-04-28 13:15:33 -07:00
pq
870aa5e4f4
Pubspec-specified analysis configuration ( #26359 ).
...
Provides support for pubspec-specified analysis configurations.
Context: https://github.com/dart-lang/sdk/issues/26359
TODO:
* docs
* CLI support
BUG=
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org/1923973004 .
2016-04-28 13:10:45 -07:00
Brian Wilkerson
ee8bb2cea9
Add a (public) utility method to clean-up code
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1925173002 .
2016-04-28 10:07:32 -07:00
Jaime Wren
1aee4602bc
Code completion bug fix, https://github.com/dart-lang/sdk/issues/26342 , and test cleanup in variable_name_contributor_test.dart
...
BUG=https://github.com/dart-lang/sdk/issues/26342
R=danrubel@google.com
Review URL: https://codereview.chromium.org/1924683002 .
2016-04-27 09:26:49 -07:00
Konstantin Shcheglov
78ca9cc10b
Fixes for SingleContextManager after experiments with two big codebases.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1926763002 .
2016-04-27 08:46:18 -07:00
Konstantin Shcheglov
5318eca65c
Watch analysis roots separately.
...
The context folder sometimes includes way too much.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1919343002 .
2016-04-26 11:33:50 -07:00
Konstantin Shcheglov
c6257ba52b
Add Driver.useSingleContextManager to turn on single context manager.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1915833007 .
2016-04-26 10:29:48 -07:00
Konstantin Shcheglov
099f227c17
Add test for 'refresh()' and clean up other tests.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1922743002 .
2016-04-26 07:16:44 -07:00
Konstantin Shcheglov
4cd1d552e4
We don't use path filter in SingleContextManager.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1916063003 .
2016-04-25 14:31:03 -07:00
Jaime Wren
086026307b
Plug VariableNameContributor contributor into completion_plugin.dart
...
BUG=https://github.com/dart-lang/sdk/issues/24254
R=danrubel@google.com
Review URL: https://codereview.chromium.org/1916213002 .
2016-04-25 14:01:22 -07:00
Konstantin Shcheglov
c9068a8692
Listen for changes in the context folder.
...
I had to convert several static methods into instance ones becuse I'd
like to use PathContext from the ResourceProvider.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1921863002 .
2016-04-25 13:51:47 -07:00
Jaime Wren
e01634bd79
Code completion progress part two of fix to https://github.com/dart-lang/sdk/issues/24254 , addition of new contributor, variable_name_contributor.dart.
...
The completions are not yet showing up in either IDE, IntelliJ or Atom.
BUG=https://github.com/dart-lang/sdk/issues/24254
R=danrubel@google.com
Review URL: https://codereview.chromium.org/1916893002 .
2016-04-25 12:51:14 -07:00
Konstantin Shcheglov
f892af36d8
Only add files that are match an analyzed files glob.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1922643002 .
2016-04-25 11:44:04 -07:00
Konstantin Shcheglov
44cedebded
Support for replacing of the context folder.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1920993002 .
2016-04-25 11:24:43 -07:00
Konstantin Shcheglov
337862bca2
Initial version of SingleContextManager.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1918893002 .
2016-04-25 08:38:38 -07:00
Jaime Wren
58bf3075a8
Code completion progress part one of fix to https://github.com/dart-lang/sdk/issues/24254 , addition of optype.includeVarNameSuggestions
...
BUG=https://github.com/dart-lang/sdk/issues/24254
R=danrubel@google.com
Review URL: https://codereview.chromium.org/1910263004 .
2016-04-22 11:00:21 -07:00
Brian Wilkerson
166f23e13f
Code clean-up
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1907323002 .
2016-04-22 09:05:01 -07:00
Jaime Wren
9c1c7ed250
Code Completion refactoring, follow up on comment in https://codereview.chromium.org/1908703002/ to cleanup boilerplate.
...
Also, changed all filters to use one typedef making the all function filters consistent and type checked.
R=danrubel@google.com
Review URL: https://codereview.chromium.org/1911803004 .
2016-04-21 12:19:28 -07:00
Jaime Wren
bfb5849f44
Code completion bug fix, don't suggest optional field formal parameters that are already in the constructor
...
BUG=https://github.com/dart-lang/sdk/issues/26255
R=danrubel@google.com
Review URL: https://codereview.chromium.org/1907723002 .
2016-04-21 10:46:35 -07:00
Jaime Wren
cc065a3ad0
Code completion improvement, use type information when suggesting constructors, part 2.
...
This finishes the work started with https://codereview.chromium.org/1892823003/ , by also adding the filter into the local_library_contributor.dart.
BUG=https://github.com/dart-lang/sdk/issues/26254
R=danrubel@google.com
Review URL: https://codereview.chromium.org/1908703002 .
2016-04-21 10:16:06 -07:00
Jaime Wren
55eac4da46
Code Completion API fix of mistake in DartCompletionRequest
...
R=danrubel@google.com
Review URL: https://codereview.chromium.org/1900373003 .
2016-04-21 10:05:10 -07:00
Konstantin Shcheglov
305f1f538c
Pull the 'keyword' property into Token.
...
So, we can use it without casting to KeywordToken.
This gives small, but noticable performanace boost, about 4% on hot VM.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org/1909843002 .
2016-04-21 08:23:49 -07:00
Jaime Wren
b13f1fe313
Code completion API refactoring: replace resolveExpression(Expression) with resolveContainingExpression(AstNode) and resolveContainingStatement(AstNode)
...
R=danrubel@google.com
Review URL: https://codereview.chromium.org/1898983004 .
2016-04-20 13:13:14 -07:00
Jaime Wren
345051cf1c
Code completion test cleanup, rename test_DefaultFormalParameter_named_expression_filter as test_ArgumentList_namedParam_filter in local_reference_contributor_test.dart
...
R=danrubel@google.com
Review URL: https://codereview.chromium.org/1896853004 .
2016-04-20 11:08:18 -07:00
Paul Berry
8f9defbb50
Move InheritanceManager to its own file.
...
No changes other than code motion.
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org/1903663003 .
2016-04-20 08:58:00 -07:00
Brian Wilkerson
f3b177e481
Remove references to and uses of MemberMap
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1893313004 .
2016-04-20 07:40:02 -07:00
Konstantin Shcheglov
daed53916a
Issue 26207. Fix for renaming top-level functions with offset 0.
...
They were indistinguishable from the corresponding enclosing units.
Now we use a separate kind for units and libraries.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/26207
Review URL: https://codereview.chromium.org/1896023005 .
2016-04-19 15:36:28 -07:00
Brian Wilkerson
9aa64259dc
Revert "Remove MemberMap in favor of HashMap"
...
Review URL: https://codereview.chromium.org/1898193004 .
2016-04-19 12:20:48 -07:00
Brian Wilkerson
fb43f1276c
Remove MemberMap in favor of HashMap
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1904433003 .
2016-04-19 11:59:44 -07:00
Jaime Wren
214a201ae5
Code completion improvement, use type information when suggesting constructors
...
BUG=https://github.com/dart-lang/sdk/issues/26254
R=danrubel@google.com
Review URL: https://codereview.chromium.org/1892823003 .
2016-04-18 12:11:46 -07:00
Brian Wilkerson
3ab253b977
More steps toward making server strong mode clean
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1900503002 .
2016-04-18 07:52:42 -07:00
Brian Wilkerson
d680aba415
Move scopes into a separate library
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1888223003 .
2016-04-15 07:38:57 -07:00
Jaime Wren
2e87758149
Code completion tests: 2 additional tests for the is and as expressions.
...
R=danrubel@google.com
Review URL: https://codereview.chromium.org/1889873003 .
2016-04-14 13:28:00 -07:00
Brian Wilkerson
21a1b757c1
Clean up hints after a new hint was introduced
...
R=jwren@google.com
Review URL: https://codereview.chromium.org/1890973002 .
2016-04-14 13:15:34 -07:00
Florian Loitsch
bcd8ef3dea
Enable conditional directives by default.
...
R=brianwilkerson@google.com , iposva@google.com , sigmund@google.com
Review URL: https://codereview.chromium.org/1851753002 .
2016-04-14 19:02:41 +02:00
Jaime Wren
01aaf8629e
Code completion improvement: in NamedExpressions (m(someNamedParam: ^)), use type information to sort variables higher in relevance.
...
R=danrubel@google.com
Review URL: https://codereview.chromium.org/1882243003 .
2016-04-13 16:11:39 -07:00
Jaime Wren
6a29eab2c3
Code completion refactoring in local contributor, have calls to _addLocalSuggestion() split into the different categories of completions so that fitering, see _addLocalSuggestion_includeTypeNameSuggestions(), can occur before the suggestion gets to _addLocalSuggestion()
...
Take two: can't commit it here: https://codereview.chromium.org/1881153002/
Review URL: https://codereview.chromium.org/1882903002 .
2016-04-13 10:15:50 -07:00
Brian Wilkerson
7bc093bf1c
Remove unused field
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org/1882473004 .
2016-04-12 12:32:42 -07:00
Florian Loitsch
50bdab3841
Steps towards making the convert library strong-mode compliant.
...
This version has a few deprecated methods. In a future release they will be removed.
See https://codereview.chromium.org/1827803002 for the final patch (once the deprecated methods have been removed).
R=leafp@google.com , lrn@google.com
Committed: https://github.com/dart-lang/sdk/commit/4ab1219bf93a33a2a3d4803e053ccd70ce190371
Reverted: https://github.com/dart-lang/sdk/commit/045a3753665268761508c8053e0ee84372d9ef35
Review URL: https://codereview.chromium.org/1847843002 .
2016-04-12 20:59:21 +02:00