scheglov@google.com
51842b06f2
Fix type hierarchy when there is no element.
...
This one was caught by an integration test.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//892913004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43445 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 23:01:51 +00:00
scheglov@google.com
1a94fa3a6a
Wait for analysis in search domain. Rewrite with async/await.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//894323003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43435 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 21:59:31 +00:00
scheglov@google.com
a38a503d86
Replace @ReflectiveTestCase() with @reflectiveTest.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//849863002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42821 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-13 17:11:24 +00:00
paulberry@google.com
c35a4acd9c
Fix order of operations dependencies in element_references_test
...
It's not safe for a single test to have two overlapping calls to
findElementReferences() because fields in the test class are used to
hold the search results and to keep track of whether more results are
pending.
Fixes a bogus test failure that arose after the relative ordering of
futures and microtasks was changed.
BUG=dartbug.com/22014
R=scheglov@google.com
Review URL: https://codereview.chromium.org//842803003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42738 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-09 16:36:42 +00:00
scheglov@google.com
b8da9bc651
Format and sort analyzer and analysis_server packages.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//725143004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41792 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-17 22:23:53 +00:00
scheglov@google.com
df6233ae4a
Use Element's source paths instead of URIs as a key in the index.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//703963002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41530 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-05 21:02:37 +00:00
scheglov@google.com
07cf72a3ec
Improve import prefix search results UI.
...
1. Bug fix for search on an import directive without a prefix.
2. Pretend that import prefixes are children on libraries' compilation units.
3. Icon for import prefix elements in Editor.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//640333002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41024 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-09 20:30:49 +00:00
scheglov@google.com
e9e0694e2f
Remove references to Engine classes from protocol.dart
...
R=brianwilkerson@google.com , paulberry@google.com , danrubel@google.com
BUG=
Review URL: https://codereview.chromium.org//628293004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40948 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-07 00:24:48 +00:00
paulberry@google.com
1f50bf550a
Remove special list behavior in analysis server protocol.
...
Previously, for optional lists, the absence of a list was treated by
the toJson and fromJson methods as equivalent to the presence of an
empty list. This disagreed with the API documentation in several
places and created the risk of null reference exceptions in clients.
This change makes optional lists behave just like optional fields of
any other type.
BUG=dartbug.com/21230
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//625413002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40939 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-06 16:32:14 +00:00
scheglov@google.com
3e884db043
Index and search of import prefixes.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//582453002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40397 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-17 20:19:39 +00:00
scheglov@google.com
620f7cf957
Rollback https://codereview.chromium.org/575613002
...
I'm sorry, but I'm going to rollback this change.
We discussed this offline with Brian and decided that while it looks
technically correct, it does not work well for our use cases, as well as
probably for our users.
R=paulberry@google.com , brianwilkerson@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=19697
Review URL: https://codereview.chromium.org//560133003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40324 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-16 16:31:52 +00:00
scheglov@google.com
e823d01b65
Issue 19697. Partial fix - don't search for subclasss members.
...
I think it still worth to commit this CL, if nothing else,
it makes search a little faster by not searching for subclasses.
R=paulberry@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=19697
Review URL: https://codereview.chromium.org//575613002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40290 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-15 23:34:15 +00:00
scheglov@google.com
e5a2441aa4
Search for LabelElement and icon for LABEL in Editor.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//576443002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40254 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-15 17:03:35 +00:00
scheglov@google.com
bab2843d3a
Issue 19696. Test for potential reference to the element defined in a subclass.
...
R=paulberry@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=19696
Review URL: https://codereview.chromium.org//567243002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40248 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-15 15:07:08 +00:00
paulberry@google.com
2c15ecefbf
Avoid false positives when searching for uses of a constructor.
...
Since constructor invocations are statically bound, there's never a
reason to search for potential matches. Since potential matching is
performed by name, this avoids an enormous number of false positives
in the case where the constructor is unnamed.
BUG=dartbug.com/20869
R=scheglov@google.com
Review URL: https://codereview.chromium.org//560553003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40058 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-09 21:25:15 +00:00
paulberry@google.com
8d8ee25cff
Merge analysis_testing package into analysis_server.
...
Note that analysis_server already contains a file test/mocks.dart, so
the mocks.dart file from analysis_testing has been imported as
test/mocks2.dart. I will merge these two into a single file in a
future CL.
R=scheglov@google.com
Review URL: https://codereview.chromium.org//533243002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39814 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-03 18:11:42 +00:00
scheglov@google.com
df574c6e2c
Test for 'search.findElementReferences' for the case when there is no element.
...
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org//536563002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39779 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-02 21:54:19 +00:00
paulberry@google.com
33b4cc89c0
Make findElementReferences' "id" result optional.
...
R=jwren@google.com
Review URL: https://codereview.chromium.org//529123002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39773 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-02 20:10:59 +00:00
paulberry@google.com
f556420f97
Rename some bools in the analysis server API.
...
R=brianwilkerson@google.com , jwren@google.com
Review URL: https://codereview.chromium.org//508203002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39604 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-27 16:39:49 +00:00
scheglov@google.com
d197a2cded
Extract 'toJson' in TH test.
...
R=paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org//501043002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39526 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-25 19:11:17 +00:00
paulberry@google.com
0c0fd777a6
Finish modifying analysis server to make use of code generation.
...
Generated code is used to produce the response to these requests:
- analysis.updateOptions
- analysis.updateContent
- analysis.setSubscriptions
- analysis.setPriorityFiles
- analysis.setAnalysisRoots
- server.shutdown
- server.setSubscriptions
Generated code is used to produce these requests:
- server.shutdown
- server.getVersion
- server.shutdown
- server.connected
Generated code is used to produce these notifications:
- completion.results
- analysis.overrides
- analysis.outline
- analysis.occurrences
Generated code is used to decode these notifications:
- server.status
In addition, some dead code was removed, the 'protocol.dart' and
'protocol2.dart' files were combined, and the fields Response.result,
Request.params, and Notification.params were made private (to
encourage future use of the generated code). Also, some overly
verbose import statements were cleaned up by using "hide" rather than
"show".
R=danrubel@google.com
Review URL: https://codereview.chromium.org//506433002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39516 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-25 10:48:16 +00:00
paulberry@google.com
10fdb7677a
Change analysis server protocol to omit empty lists when optional.
...
For object fields of type List that are marked as optional, FromJson
code automatically populates the data structure with an empty list
when the field is omitted. ToJson code automatically omits the field
when its value is an empty list.
R=brianwilkerson@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//482573004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39507 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-23 18:03:34 +00:00
paulberry@google.com
caf0592503
Make more use of generated code in analysis server.
...
The following generated classes are now used:
- Element
- Location
- Occurrences
- Outline
- OverriddenMember
- Override
- Position
- SearchResult
- SearchResultKind
- SourceFileEdit
- TypeHierarchyItem
Generated code is used to produce the responses to these requests:
- completion.getSuggestions
- search.findElementReferences
- search.findMemberDeclarations
- search.findMemberReferences
- search.findTopLevelDeclarations
- search.getTypeHierarchy
Generated code is used to handle these notifications in unit testing:
- analysis.navigation
- analysis.occurrences
- analysis.outline
- analysis.overrides
- search.results
In addition, we no longer bother to test the JSON conversion code on
AnalysisError, since it is code generated.
R=scheglov@google.com
Review URL: https://codereview.chromium.org//479683005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39470 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-21 20:04:06 +00:00
scheglov@google.com
401de00007
Remove two empty/useless domain tests.
...
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org//489703002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39407 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-20 14:16:10 +00:00
paulberry@google.com
c5ff06636b
Make more use of generated classes in analysis server.
...
Generated code is now used to process input JSON, and to create
requests and process responses in unit tests. In addition, the
handwritten classes for ElementKind and SourceEdit have been replaced
with the gennerated versions.
Also some dead code has been removed.
R=scheglov@google.com
Review URL: https://codereview.chromium.org//492563002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39404 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-20 12:39:31 +00:00
paulberry@google.com
c9b9b98343
Use generated classes to create requests in analysis server unit tests.
...
R=jwren@google.com
Review URL: https://codereview.chromium.org//477323005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39381 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-19 20:36:16 +00:00
scheglov@google.com
e1e1febe72
Merge two constants.dart into one.
...
R=paulberry@google.com , brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//478933003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39355 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-18 21:34:54 +00:00
paulberry@google.com
7226309842
Import analysis_services.dart into analysis_server.dart.
...
Having two separate packages doesn't really have any benefit, and has
the downside of forcing us to carefully avoid circular dependencies
between the two. It makes more sense to just combine them.
This is largely a mechanical change consisting of the following renames:
1. pkg/analysis_services/lib/src/* -> pkg/analysis_server/lib/src/services/*
2. pkg/analysis_services/lib/* -> pkg/analysis_server/lib/src/services/*
3. pkg/analysis_services/test/* -> pkg/analysis_server/test/services/*
There were 4 instances where 1 and 2 created a collision:
.../services/correction/assist.dart, .../services/correction/fix.dart,
.../services/refactoring/refactoring.dart, and
.../services/search/search_engine_internal.dart. To fix the
collision, the files coming from pkg/analysis_services/lib/src were
renamed to "..._internal.dart".
In addition, pkg/analysis_services/test/test_all.dart was modified to
call pkg/analysis_services/test/services/test_all.dart.
R=brianwilkerson@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//484733003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39349 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-18 20:17:49 +00:00
paulberry@google.com
1a773207c5
Integration test search.getTypeHierarchy and make some minor fixes.
...
R=brianwilkerson@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//456613004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39045 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-08 19:39:50 +00:00
scheglov@google.com
ab7701a740
Update 'search.getTypeHierarchy' to the latest spec.
...
R=brianwilkerson@google.com , jwren@google.com
BUG=
Review URL: https://codereview.chromium.org//421123005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38885 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-04 23:27:25 +00:00
scheglov@google.com
e24d5aacfc
Implementation of the 'search.getTypeHierarchy' API.
...
R=paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org//422573003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38626 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-28 15:52:28 +00:00
scheglov@google.com
aba0cfa4e6
Remove any 'group' invocations enclosing 'runReflectiveTests'.
...
R=paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org//419563002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38547 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-24 18:08:45 +00:00
paulberry@google.com
9f49af72fc
As a temporary measure, allow SDK to be specified on analysis server cmd line.
...
Once the 'analysis.updateSdks' request is functional, this should be
unnecessary. But for now, allow the default SDK to be set via the
command line so that we don't block development of editor plugins.
R=scheglov@google.com
Review URL: https://codereview.chromium.org//394923004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38443 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-21 21:50:59 +00:00
danrubel@google.com
256e11dd57
more progress implementing analysis server code completion
...
- add more properties returned by completion suggestion
- move completion suggestion into services
- move property constants into services for use by completion services
- move HasToJson into services for completion
- remove duplicate completion test
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org//407833002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38418 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-21 02:04:49 +00:00
danrubel@google.com
2bd9f4ec92
first cut simple code completion results
...
- not all CompletionSuggestions implemented yet
- results valid in only a few situations
- more to come
BUG=
R=brianwilkerson@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//402723003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38347 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-17 21:11:39 +00:00
scheglov@google.com
3317e79eed
Search only for potential name references to Class members.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//402433003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38309 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 20:40:34 +00:00
scheglov@google.com
d82723de9d
Fix for name declaration indexing in for-in statement.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//398093003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38306 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 20:18:32 +00:00
scheglov@google.com
907d89258a
Implementation of the 'search.findMemberDeclarations' API.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//397883004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38286 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 15:42:33 +00:00
scheglov@google.com
7dafd0a143
Implementation for the 'search.findMemberReferences' API.
...
It seems that implementation if very simple, so I will put it inline instead of a separate file.
The previous 'search.findMemberDeclarations' CL will be updated before commit.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//396883002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38285 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 15:33:35 +00:00
scheglov@google.com
9a0e356bc4
Implementation for 'search.findTopLevelDeclarations' API.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//399483002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38269 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 00:25:08 +00:00
scheglov@google.com
9903444d04
Include 'element' into 'search.findElementReferences' response.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//396063002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38268 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-16 00:19:27 +00:00
scheglov@google.com
d59f0bc80f
Add hierarchy utils and use them in search.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//395623006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38259 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-15 21:12:42 +00:00
scheglov@google.com
acd4145f62
Initial implementation for 'search.findElementReferences'.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//392693002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38201 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-14 17:45:28 +00:00