Commit Graph

81 Commits

Author SHA1 Message Date
Konstantin Shcheglov eb1153c546 Fix for override completion contributions for abstract void methods and setters.
R=brianwilkerson@google.com

Change-Id: Ie505e4640095dac1f9a566a32bf9aa9f0a5926e9
Reviewed-on: https://dart-review.googlesource.com/c/85622
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-29 19:48:51 +00:00
Brian Wilkerson b12c125825 Export Future from dart:core in the mock sdk
Change-Id: I9b234e5834a6a6559b65b86140d60ea781ff8883
Reviewed-on: https://dart-review.googlesource.com/c/84501
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-11-15 19:32:30 +00:00
Brian Wilkerson 60f02dd2aa Re-enable the no-implicit-casts option
Change-Id: Id1a943971de703bd156410375211c70318ed7ca0
Reviewed-on: https://dart-review.googlesource.com/c/84361
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-11-14 16:40:03 +00:00
Konstantin Shcheglov da191665aa Issue 34709. Support generic type alias (AKA generic function type alias for now) in outline and completion.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/34709
Change-Id: Ic18d98e07ba0cbd231ded27c4c32533ee013632b
Reviewed-on: https://dart-review.googlesource.com/c/84320
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-13 21:20:08 +00:00
Konstantin Shcheglov 7cf3382f8f Fix OpType.inXyzBody to actually being in body.
R=brianwilkerson@google.com

Change-Id: I42ce480b63b4fcdfe04ebb1faa63b556759aa425
Reviewed-on: https://dart-review.googlesource.com/c/84125
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-12 19:08:39 +00:00
Konstantin Shcheglov d53f8c8789 Issue 34735. Fix completion in ConstructorFieldInitializer expression.
R=brianwilkerson@google.com, danrubel@google.com

Bug: https://github.com/dart-lang/sdk/issues/34735
Change-Id: I420822cce50b17807d1235de5d071942ce2e6076
Reviewed-on: https://dart-review.googlesource.com/c/84048
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-12 18:11:14 +00:00
Konstantin Shcheglov e3c8774543 Add AnalysisSession.analysisContext, stop using AnalysisDriver's AnalysisResult outside the driver.
Change-Id: I63138e002d9e777f51d2d843f7ef2b1f32fed3e0
Reviewed-on: https://dart-review.googlesource.com/c/82529
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-02 14:16:31 +00:00
Brian Wilkerson 2c10b5e288 Update TestTypeProvider to not require an AnalysisContext
Change-Id: I83f3429d16b544a3210c0bab8b5fae28897702fb
Reviewed-on: https://dart-review.googlesource.com/c/82470
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-01 18:22:45 +00:00
Konstantin Shcheglov 5711a1d539 Move implementations of analysis results into src/results.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I7527dfb597ff54802517093b4aa526b14e7b705c
Reviewed-on: https://dart-review.googlesource.com/c/82461
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-11-01 16:11:23 +00:00
Brian Wilkerson 6a4be163eb Convert some classes to mixins
Change-Id: I619b17eec0a76bb825c7711fe63bf17223807a57
Reviewed-on: https://dart-review.googlesource.com/c/82020
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-10-30 14:19:36 +00:00
Konstantin Shcheglov e223bd3628 Replace most of direct uses of MemoryResourceProvider with ResourceProviderMixin.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I87114418b63ef68665b9c3e487980a72db00ec6a
Reviewed-on: https://dart-review.googlesource.com/c/81744
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-10-27 17:50:10 +00:00
Jaime Wren c70666a3a3 Additional tests in the analyzer_plugin optype_test.dart file, follow up from https://dart-review.googlesource.com/c/sdk/+/80362.
Change-Id: Icc716fd9bc56cfe79a430f60419a0ce89cf1d2ee
Reviewed-on: https://dart-review.googlesource.com/c/80420
Commit-Queue: Jaime Wren <jwren@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-10-19 17:07:14 +00:00
Brian Wilkerson 180b3dd301 Remove extra spaces in copyright notices in analyzer_plugin
Change-Id: Icf01fbdd84747fc92908fe5ca818124c5df992af
Reviewed-on: https://dart-review.googlesource.com/c/79640
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-10-13 18:05:23 +00:00
Konstantin Shcheglov 80cddf0d53 Rename writeOverrideOfInheritedMember() to writeOverride() in DartEditBuilder.
R=brianwilkerson@google.com

Change-Id: I83374dcd72eb272ac5d8ad8fd040c1223544eb4c
Reviewed-on: https://dart-review.googlesource.com/c/79471
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-10-12 22:03:59 +00:00
Konstantin Shcheglov 2c352111a4 Use just TypeSystem in InheritanceManager2.
R=brianwilkerson@google.com

Change-Id: I4784293fa33b8318fc0b7f470d3f38909103910d
Reviewed-on: https://dart-review.googlesource.com/c/79472
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-10-12 22:03:29 +00:00
Konstantin Shcheglov a2a3c36b77 Switch CREATE_MISSING_OVERRIDES to writeOverrideOfInheritedMember() and using FunctionType signatures.
This fixes the issue, and simplifies code generation.

R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/34729
Change-Id: I65928b5e68e44e4db77eb9c371aa1e6d27d66635
Reviewed-on: https://dart-review.googlesource.com/c/79468
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-10-12 20:45:42 +00:00
Brian Wilkerson 8fc80031ae Fix cast exception in OpTypeAstVisitor
Change-Id: I7fa9f9586a7d57ebc9707db3ee1532c462bbeccd
Reviewed-on: https://dart-review.googlesource.com/c/78712
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-10-09 18:40:19 +00:00
Brian Wilkerson 6c712f157b Add a fix to create a mixin
Change-Id: Id0f31949a5639a00e884abc61b2cfcb5bc552b44
Reviewed-on: https://dart-review.googlesource.com/75130
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-09-17 12:43:41 +00:00
Brian Wilkerson 39535676c8 Add completion support inside the on clause
Change-Id: I55a118a6e2d684ad917b2371d640c658119e3559
Reviewed-on: https://dart-review.googlesource.com/73700
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-09-06 20:02:48 +00:00
Brian Wilkerson 0bcf767d4d Clean up more preview-dart-2 related code
Change-Id: Id1f81a635727f0f2fafb5dea4178f303c6ca4659
Reviewed-on: https://dart-review.googlesource.com/70143
Reviewed-by: Devon Carew <devoncarew@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-08-15 14:43:12 +00:00
Devon Carew 6a4f1b76ac Remove the --preview-dart-2 option from dartanalyzer and the analysis server.
Change-Id: I268b9d5f79b30d0e4a0f8e6bb81a7738c98e5eea
Reviewed-on: https://dart-review.googlesource.com/69802
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-08-14 04:24:47 +00:00
Brian Wilkerson 0bb8cbd9cb Use void in place of Null in analyzer_plugin
Change-Id: I21a3d3646c5906256e21fb8d7d71f8433b1b39e9
Reviewed-on: https://dart-review.googlesource.com/69500
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-08-11 15:30:28 +00:00
Devon Carew 6fc1dd4480 analyzer_plugin no implicit-casts.
Change-Id: I12e5d4da5b61938b3eb7cc7c0e2ade6a64510b9e
Reviewed-on: https://dart-review.googlesource.com/69201
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-08-09 22:41:41 +00:00
Konstantin Shcheglov 758e5ea502 Use '=' for default values of named parameters.
R=brianwilkerson@google.com

Change-Id: I694c9e411fc125ae7b716d0f8b9e78c5cac57e34
Reviewed-on: https://dart-review.googlesource.com/68180
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-08-02 19:34:52 +00:00
Brian Wilkerson 87f753dbd3 Replace some declarations of element with declaredElement
Change-Id: Idd62472b16cccaa98749a510197ec8d0f5053cb1
Reviewed-on: https://dart-review.googlesource.com/67820
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-08-02 16:00:36 +00:00
Danny Tuppeny 3dc201e168 Update ChangeBuilder to not include empty edits (Take 2)
Combination of Brian's change:
https://dart-review.googlesource.com/c/sdk/+/63901

and Devon's change:
https://dart-review.googlesource.com/c/sdk/+/66405

Change-Id: I57e5d1f7d3a653f225aba2d690190fe1ff18a5b1
Reviewed-on: https://dart-review.googlesource.com/67344
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2018-07-31 13:44:06 +00:00
danrubel 1ddadd4207 Update LocalDeclarationVisitorTest for fasta parser
Change-Id: Ieb36aff41bbf132bc8a1d765c6b08e15c4363ac3
Reviewed-on: https://dart-review.googlesource.com/66261
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-07-24 14:57:16 +00:00
danrubel dd23176eab Update CompletionTargetTest for fasta parser
Change-Id: Ic3673f05750d8973f5e1cd7c787d884cf66d2b09
Reviewed-on: https://dart-review.googlesource.com/66260
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-24 14:57:16 +00:00
danrubel 0e04a3b858 Update code completion OpType and tests for fasta parser
Change-Id: Icaf11d7e79d9638507b8909be5edb7f85df321dd
Reviewed-on: https://dart-review.googlesource.com/66200
Commit-Queue: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-23 18:36:49 +00:00
Devon Carew 710530c640 Update deprecated uses of package:test's isInstanceOf.
Change-Id: I0789ad89f2a247a17c472d74ca16885c5b8b6d5c
Reviewed-on: https://dart-review.googlesource.com/63320
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2018-06-30 00:08:44 +00:00
Konstantin Shcheglov def6f6c86c Don't create linked groups when nothing was written.
In particular, if the type was invalid, so that we cannot write it.

R=brianwilkerson@google.com

Change-Id: I5499e17e2aa3527d21cab050b7fecfd3cd09efc7
Reviewed-on: https://dart-review.googlesource.com/55860
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-18 15:54:29 +00:00
Konstantin Shcheglov 62ffedefdd Rewrite writing types to using existing writeXYZ() methods.
Also extract code that ensures imports and writes prefixes into a
separate method.

R=brianwilkerson@google.com

Change-Id: Icd35af19435153bfaebd46f7611823e6a9830d20
Reviewed-on: https://dart-review.googlesource.com/55640
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-17 15:51:27 +00:00
Konstantin Shcheglov 53a51d17db Support for optional ImportPrefixGenerator to generate prefixes for new imports.
Only one import is generated for each library.
If there is already an import for a library, new prefix is not asked.
If a prefix was generated once, it is not possible to force another
import with a different prefix.

R=brianwilkerson@google.com

Change-Id: I1676a1953002060b5e7155ce90abf87b3bfe270e
Reviewed-on: https://dart-review.googlesource.com/55326
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-05-16 20:15:03 +00:00
Konstantin Shcheglov d9d7cb12a6 Replace DartFileEditBuilder.importLibraries() with importLibrary().
It now returns the text of the URI that will be actually used, so
we can show it in the quick fix message without computing it separately.

R=brianwilkerson@google.com

Change-Id: I16a455d8f6a3c3e3a9c5779c94d654de32992006
Reviewed-on: https://dart-review.googlesource.com/55501
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-16 18:46:22 +00:00
Konstantin Shcheglov 964dae472c Issue 30577. Use AST to find position for the first directive.
R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/30577
Change-Id: If69df5f49228a3b698544dcf82ad0c34c1be84e8
Reviewed-on: https://dart-review.googlesource.com/54307
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-05-09 06:00:59 +00:00
Konstantin Shcheglov d624b8580a Add DartEditBuilder.writeReference().
R=brianwilkerson@google.com

Change-Id: Id8a09c8c53987af49905a4cf6fa6a11b55dbd90c
Reviewed-on: https://dart-review.googlesource.com/54062
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-07 19:52:48 +00:00
Konstantin Shcheglov 296ab86012 Revert "Add DartEditBuilder.writeTopLevelElementReference()."
This reverts commit 23a1534432.

Reason for revert: a different API is more suitable.

Original change's description:
> Add DartEditBuilder.writeTopLevelElementReference().
> 
> R=​brianwilkerson@google.com, paulberry@google.com
> 
> Change-Id: Ib1511a91a7f021002e4b2f109cebe82b2814985d
> Reviewed-on: https://dart-review.googlesource.com/53687
> Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
> Reviewed-by: Paul Berry <paulberry@google.com>

TBR=paulberry@google.com,scheglov@google.com,brianwilkerson@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: Ia5a8f1976d8ffc21de5672cce3dee73c3297cfcf
Reviewed-on: https://dart-review.googlesource.com/53881
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-07 03:50:28 +00:00
Konstantin Shcheglov 23a1534432 Add DartEditBuilder.writeTopLevelElementReference().
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ib1511a91a7f021002e4b2f109cebe82b2814985d
Reviewed-on: https://dart-review.googlesource.com/53687
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-05-04 16:37:26 +00:00
Konstantin Shcheglov b4a2259b5f Enhance DartEditBuilder.writeConstructorDeclaration() to support parameter/initializer/bodyWriter.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: If6be2f3e095ae03355c04ea3f6a8524e478c1552
Reviewed-on: https://dart-review.googlesource.com/52989
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-04-30 15:56:19 +00:00
Konstantin Shcheglov c17ef848d6 Don't try to add new imports before leading comments of another import.
By doing this we tried to fix keeping "// ignore: xyz" correct.
https://github.com/dart-lang/sdk/issues/32432

Unfortunately this breaks a more often case, when there is a license
comment before the first import directive, and there is no reliable
way to decide if a comment is a license or not.

R=brianwilkerson@google.com

Bug: https://github.com/flutter/flutter-intellij/issues/2169
Change-Id: Id5bdf7af48bd0b8748a53f8c5b3eb79ac2d6ae01
Reviewed-on: https://dart-review.googlesource.com/52940
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-04-27 20:59:09 +00:00
Janice Collins 1afe71c08a Enable preview-dart-2 as default for analyzer.
Based on https://dart-review.googlesource.com/c/sdk/+/52340, but adds
the necessary plumbing through the test system to pass through
negations to strong and preview-dart-2.  Also adds support for those
negations to the analyzer.

Change-Id: I9793ff28bb593d25bbb0a2ed8736b5b53e0a62d8
Reviewed-on: https://dart-review.googlesource.com/52461
Commit-Queue: Janice Collins <jcollins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-04-26 17:01:12 +00:00
Konstantin Shcheglov 9f0e391e28 Rename writeParameterSource() to writeParameter() and make 'type' optional.
R=brianwilkerson@google.com

Change-Id: I0658a642f5877ba2c3e8e69e173fb9cfba4ef719
Reviewed-on: https://dart-review.googlesource.com/47584
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-03-21 21:00:19 +00:00
Konstantin Shcheglov 15bf72615d Fix for using isFinal/isConst with type in writeFieldDeclaration().
R=brianwilkerson@google.com

Change-Id: I73ae0f2e714b2820e327e9a9e5a98baf5a2df189
Reviewed-on: https://dart-review.googlesource.com/47560
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-03-21 19:18:56 +00:00
Brian Wilkerson b15860f43a Convert analyzer_plugin tests to pass under preview-dart-2
Change-Id: I4531491524de0e93391a75a3972f249d604f0e2b
Reviewed-on: https://dart-review.googlesource.com/46568
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-03-15 16:54:59 +00:00
Brian Wilkerson 602a8c2a7b Clean up usage of deprecated constants
Change-Id: I9005ba6e94529e15d8f7b21322591f4a9dabec47
Reviewed-on: https://dart-review.googlesource.com/45763
Commit-Queue: William Hesse <whesse@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-03-09 01:02:49 +00:00
Brian Wilkerson f5b5ae86b6 Respect comments when inserting imports (issue 32432)
Change-Id: I163818e60e21ee68bd621b8faa94b7ba9b545bcf
Reviewed-on: https://dart-review.googlesource.com/45526
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-03-07 20:47:42 +00:00
Brian Wilkerson 3d183f6999 Add support for selection ranges to ChangeBuilder
Change-Id: Icd4c1bcf2ecb66020a9a7f478a037c478e8a109f
Reviewed-on: https://dart-review.googlesource.com/42024
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-02-16 19:23:06 +00:00
Brian Wilkerson 0501c740ac Member overrides invoke the overridden member and the display label uses ellipses
Change-Id: I9cb2db1514a8a2798cb3ec69d3d71047573a8dd4
Reviewed-on: https://dart-review.googlesource.com/41903
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
2018-02-16 14:12:27 +00:00
pq 35221ce1fc Override completion displayText implementation.
Change-Id: If19ccb00145ec4befec2be575af48709f122b511
Reviewed-on: https://dart-review.googlesource.com/40510
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-02-13 19:15:26 +00:00
Konstantin Shcheglov 7cffd55c41 Don't suggest anything right after double or integer literals.
R=brianwilkerson@google.com, danrubel@google.com

Change-Id: Ib8b9091daedb1e1921ae3c454e83a5b96d94a71a
Reviewed-on: https://dart-review.googlesource.com/40471
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
2018-02-12 01:18:35 +00:00