Commit Graph

3080 Commits

Author SHA1 Message Date
Danny Tuppeny d792809d6f Add signature param defaultValue and remove (unused) selectedParameterIndex
Bug: https://github.com/dart-lang/sdk/issues/27034
Change-Id: I3409ab544b79a7f64d6d41e5d091ca20418f248a
Reviewed-on: https://dart-review.googlesource.com/66562
Commit-Queue: Danny Tuppeny <dantup@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-25 15:42:44 +00:00
Danny Tuppeny e5a58158e3 Add constructor impl/tests + additional function tests for getSignature
Bug: https://github.com/dart-lang/sdk/issues/27034
Change-Id: Ie47f76d4197dbcdec0fcfdada7914fdf986731ec
Reviewed-on: https://dart-review.googlesource.com/66540
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2018-07-25 14:57:15 +00:00
Devon Carew ab0d27b694 Ignore an exception when deleting the temporary driver cache directory.
Change-Id: I019adc6211af2db861900aaa80a126a48419be77
Reviewed-on: https://dart-review.googlesource.com/66620
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2018-07-25 14:35:08 +00:00
Brian Wilkerson be7717dab4 Deprecate more propagated info members
Change-Id: I65555bad9f1087602b7bdb5ae41a3920c23d143d
Reviewed-on: https://dart-review.googlesource.com/66500
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-25 13:17:23 +00:00
Danny Tuppeny ebb033cb72 Add signature information to spec and add basic implementation for functions
Bug: https://github.com/dart-lang/sdk/issues/27034
Change-Id: I8d3f1a9c9a824b4b80f9cfa0370a439fa897b226
Reviewed-on: https://dart-review.googlesource.com/64689
Commit-Queue: Danny Tuppeny <dantup@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-25 07:16:52 +00:00
Devon Carew 80f851a711 Normalize the analysis server snapshot.
Bug: https://github.com/dart-lang/sdk/issues/33944
Change-Id: I2eaefb81e1a06e9ed9cc7bd263d8a3ee667df75f
Reviewed-on: https://dart-review.googlesource.com/66403
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2018-07-25 06:35:42 +00:00
Devon Carew c1552c3728 Ensure we terminate training if we get an exception from the analysis server.
Change-Id: Iddd9ca5af50594e2dcc23833ae5d6a75a2cf09f8
Reviewed-on: https://dart-review.googlesource.com/66411
Reviewed-by: Alexander Aprelev <aam@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-25 05:06:25 +00:00
Brian Wilkerson 54e241d71f Deprecate more AST API and replace uses of it
Change-Id: I6ecf17853915e4b61ee39f25d99451b78d2ba4ac
Reviewed-on: https://dart-review.googlesource.com/66401
Reviewed-by: Devon Carew <devoncarew@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-24 15:51:18 +00:00
Brian Wilkerson e98334a58c Remove remaining references to propagated types and mark the members as deprecated
Change-Id: I2508bc7d6afb36a42e33f0e421f3a39f6d8b4d02
Reviewed-on: https://dart-review.googlesource.com/66142
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-22 23:47:01 +00:00
Brian Wilkerson 81c2b9d486 Remove some of the uses of propagated information
Change-Id: Ie82b72302d96c14fd6104945e0fb25cd721ecfda
Reviewed-on: https://dart-review.googlesource.com/65940
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-07-20 16:32:41 +00:00
Devon Carew 7ddc4ce8ba Train the analysis server snapshot on pkg/analyzer_cli.
Change-Id: I07dcaec344d681a4abf8f09558d83a68efdd70e8
Reviewed-on: https://dart-review.googlesource.com/65575
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-18 21:32:09 +00:00
Devon Carew 006a2f481b Fix a type issue at runtime.
Change-Id: I6e61813883c15b872dc5ee5aa9e9f4c617484958
Reviewed-on: https://dart-review.googlesource.com/65560
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2018-07-18 16:08:20 +00:00
danrubel a133e78ead Mark last 2 statement completion tests as failing for now
... so that the many other tests will be correctly asserted as passing by the bots.

Change-Id: I382f49b6578574ea2e1ea1adf52aa67241b9ae09
Reviewed-on: https://dart-review.googlesource.com/65460
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-07-18 14:10:10 +00:00
Devon Carew 23776cd162 Increase the analysis server memory cache size.
Change-Id: I7f9bcef3d0b0676f0512532dd7597c6d194b7ef2
Reviewed-on: https://dart-review.googlesource.com/65480
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2018-07-18 00:02:31 +00:00
danrubel 22998a18fc Statement completion fixes
This fixes all but 2 of the statement completion tests
when the fasta parser is enabled.

Change-Id: I056cb386f46ce489e5ee70f01d9903fa4eb03bf6
Reviewed-on: https://dart-review.googlesource.com/65361
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-07-17 22:10:01 +00:00
Peter von der Ahé 64a1f8f69c Prepare for upcoming void usage semantics
Change-Id: I30d92ffb88338036aebed4e6891ce8e5737bf81f
Reviewed-on: https://dart-review.googlesource.com/65322
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2018-07-17 15:36:38 +00:00
Brian Wilkerson ab1c1582b1 Remove deprecation hints in analyzer packages
Change-Id: I001e57239a87f2806be74052a5e7686245fea812
Reviewed-on: https://dart-review.googlesource.com/65000
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
2018-07-17 15:22:07 +00:00
Brian Wilkerson ceab1bcfd3 Do not offer to create a class for identifiers in directives (issue-33856)
Change-Id: I0692261315162cac5f439b52c252e6c59edc61a9
Reviewed-on: https://dart-review.googlesource.com/65023
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-07-15 19:47:37 +00:00
Danny Tuppeny d80c0b25d7 MOVE_FILE refactor review tweaks
- Use the correct driver that contains this file
- Return a fatal error if we don't have exactly one driver
- Add a workspace method to filter drivers

Bug: https://github.com/dart-lang/sdk/issues/33605
Change-Id: I4ae3249616d1788283c29bb3777fe819d55b50e5
Reviewed-on: https://dart-review.googlesource.com/63948
Commit-Queue: Danny Tuppeny <dantup@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-07-12 17:33:26 +00:00
Devon Carew 76d1a9b7d1 Fix a runtime types issue in the plugin channel with reported error messages.
Bug: https://github.com/dart-lang/sdk/issues/33808
Change-Id: Ibe79fff9f9c4aecd36c24354f82740e4d00f5f01
Reviewed-on: https://dart-review.googlesource.com/64620
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-11 19:12:35 +00:00
danrubel 89d6f50465 Fix override completion suggestion when fasta parser enabled
Change-Id: I72a066c8a1a71fe4fa037ff86d19e19ed56371d5
Reviewed-on: https://dart-review.googlesource.com/64480
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-07-11 15:43:12 +00:00
danrubel 647c72e0e5 Fix keyword completion with fasta parser enabled
Change-Id: I9c7417168d27b13eae46bce90d6a61b447f0556c
Reviewed-on: https://dart-review.googlesource.com/64421
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
2018-07-11 14:25:54 +00:00
Devon Carew 403273a088 Deprecate options.declarationCasts.
Change-Id: I50b2e0ae8b330672c15a28098825d9585c0ac5e9
Reviewed-on: https://dart-review.googlesource.com/63641
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-10 23:29:54 +00:00
Danny Tuppeny 609a191115 Basic implementation of MOVE_FILE for files
Simple file tests are passing (directories, packages still outstanding).

Bug: https://github.com/dart-lang/sdk/issues/33605
Change-Id: Id9793698050c1a98ad56f511bb515d59d6c769ca
Reviewed-on: https://dart-review.googlesource.com/63740
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2018-07-05 16:50:25 +00:00
Danny Tuppeny 148013f9f7 Re-add tests for MOVE_FILE refactoring.
- Revert commit 90121b528a
- Remove old implementation of MOVE_FILE and return an empty change
- Fix compile errors
- Mark all tests with @failingTest

Bug: https://github.com/dart-lang/sdk/issues/33605
Change-Id: Idb3b31e2bec1788d0e4148dd99213d57b6b2e38a
Reviewed-on: https://dart-review.googlesource.com/63584
Commit-Queue: Danny Tuppeny <dantup@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-07-04 07:17:57 +00:00
Devon Carew c19233dcce Plumb in more of the analytics impl into the analysis server; allow clients to enble analytics.
Change-Id: Id546ce60e3ec49d37d6c5545f98a46bff009e6c1
Reviewed-on: https://dart-review.googlesource.com/62701
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-06-28 16:28:25 +00:00
Devon Carew 17b53a2835 Test out no_implicit_casts on the analyzer source base.
Change-Id: I4eb2414d7d9bbe21883c9e5e8eca10f2eaafb465
Reviewed-on: https://dart-review.googlesource.com/62725
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2018-06-28 02:20:43 +00:00
Devon Carew 64fd6653cf Update deprecated references.
Change-Id: I99b827502fef1c4dc2d8ccdece74df59765dcb54
Reviewed-on: https://dart-review.googlesource.com/61300
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2018-06-20 16:28:38 +00:00
Brian Wilkerson 7be47cd30d Remove some dead code (including implicit setters)
Change-Id: I524ced04dafe862afda0352ac36d65be383eaca5
Reviewed-on: https://dart-review.googlesource.com/60703
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-06-19 13:29:46 +00:00
Konstantin Shcheglov 7d94755836 Issue 33471. Use full ResolveResult in Extract Local refactoring.
So, that we can give the file content to CorrectionUtils. Otherwise we
might attempt to use resolved unit for older version of the file
content, and re-read file content.

It does not fully solves the problem, because the client still might
get changes that corresponds to the older state of the file, or
files. We might want to consider un-deprecating fileStamp in
SourceFileEdit.

R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/33471
Change-Id: I4877bc86a14033cc4c944cfaa0265db78b17de4c
Reviewed-on: https://dart-review.googlesource.com/60701
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-06-18 18:22:01 +00:00
Devon Carew de5f9ea95f Add --use-fasta-parser flags to dartanalyzer and the analysis server.
Change-Id: Id7272c0d86806f2cbdfc982ee90923b018e08866
Reviewed-on: https://dart-review.googlesource.com/60453
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Dan Rubel <danrubel@google.com>
2018-06-16 13:21:24 +00:00
Konstantin Shcheglov 0e4c158847 Issue 33458. Suggest 'Create Class' Quick Fix for creation without new.
When the identifier is not resolved in Test() it is impossible to
know whether is expected to be a function invocation or an instance
creation. Suggest both.

R=brianwilkerson@google.com

Bug: https://github.com/dart-lang/sdk/issues/33458
Change-Id: I898fb85af33d4553b501a9fe3e59d792562d9053
Reviewed-on: https://dart-review.googlesource.com/60452
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-06-15 20:34:29 +00:00
Konstantin Shcheglov 6f44d3f208 Issue 2287. Move all, but constructors and fields set in constructors, from StatelessWidget into State.
R=brianwilkerson@google.com

Bug: https://github.com/flutter/flutter-intellij/issues/2287
Change-Id: I313973bfd74642d04b35b793c7f463c8050ee9a2
Reviewed-on: https://dart-review.googlesource.com/60221
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-06-14 15:35:00 +00:00
Brian Wilkerson f6d2c2378a Add awaits in async methods to restore previous semantics
Change-Id: I7711cd878a31df0fb0c92572e2256c0a26923640
Reviewed-on: https://dart-review.googlesource.com/59480
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-06-08 19:58:07 +00:00
Konstantin Shcheglov 7e284d4406 Issue 18270. Improve 'Extract Widget' to handle return statement selection.
R=brianwilkerson@google.com

Bug: https://github.com/flutter/flutter/issues/18270
Change-Id: Id8143dd72de6222eb2d64ccde6fa12856971c7fd
Reviewed-on: https://dart-review.googlesource.com/59120
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-06-07 17:36:16 +00:00
Danny Tuppeny 111b621828 Handle folding for function expression invocations
Change-Id: Id93004c1ea218b1768d649a2a806ce58a9d7f0a5
Reviewed-on: https://dart-review.googlesource.com/59061
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2018-06-07 14:42:42 +00:00
Danny Tuppeny 3af09b5b26 Add support for invocation + list/map literal folding
Bug: https://github.com/Dart-Code/Dart-Code/issues/966
Change-Id: Id85471f095b26349e60e0b10f89b4465d4c9b138
Reviewed-on: https://dart-review.googlesource.com/58740
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <dantup@google.com>
2018-06-07 09:05:33 +00:00
Brian Wilkerson 1f03109200 Proposed replacement for SourceFactory
Change-Id: Iadcb71a4f9682d4cb9636aea6bb0b91f3bf040f9
Reviewed-on: https://dart-review.googlesource.com/58160
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-06-05 16:09:49 +00:00
Konstantin Shcheglov 6449e67c5d In getElementAtOffset() try first to find the element as if it is the nameOffset.
IntelliJ sends us the file and offset of the declaration of the element,
not the file and offset where the element is referenced (and where the
user actually requested search). It uses navigation information to do
this. Unfortunately this means that in the most case the unit that
defines the element is not a priority one, so we have to resolse it
from scratch. But we know that we are always given the name offset,
so we can look first into the element model and avoid performing
expensive unit resolution.

If the search is not successful, or the file is a priority one,
we use resolved unit anyway.

R=brianwilkerson@google.com

Change-Id: Ic6a32d3d8f9e61b245b1dd9f7fdf626c809f5fd5
Reviewed-on: https://dart-review.googlesource.com/58322
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-06-04 21:14:49 +00:00
Brian Wilkerson 7246d2e759 Fix exception in fix processor (issue 33312)
Change-Id: I8aa84eb6e2f6905888626447a96f65ad3e279c36
Reviewed-on: https://dart-review.googlesource.com/58042
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-06-01 22:12:57 +00:00
Konstantin Shcheglov 184df3aee0 Make AnalysisServer.getAnalysisResult() sync to avoid changing behavior between Dart1 and Dart2.
R=brianwilkerson@google.com

Change-Id: I35e01907a6e8286b5ffd48a3b5ac6fcaf23034b3
Reviewed-on: https://dart-review.googlesource.com/58000
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-06-01 21:17:33 +00:00
Konstantin Shcheglov 85b4a799eb Search references to elements and subtypes in all known (and discovered) files.
We discover classes in packages, so it should improve situation for Flutter.

We don't yet discover files in SDK per se (although I already see a lot
of subclasses), so might still miss some files, but all search bits are
in place, we just need to do discovery in SDK. Should be easy to do
in a day or two.

Also search for private and local elements probably still work only
for added files, again will get to it in a following CL.

https://github.com/flutter/flutter-intellij/issues/2296
https://github.com/flutter/flutter-intellij/issues/2258
https://github.com/dart-lang/sdk/issues/26762
https://github.com/dart-lang/sdk/issues/29112

R=brianwilkerson@google.com

Change-Id: Ib2b73b4cb31fd14b2514e70fbfe58735418e74d5
Reviewed-on: https://dart-review.googlesource.com/57760
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-06-01 14:47:43 +00:00
Konstantin Shcheglov f5d991e6a1 Support extracting selected statements into a new Flutter widget.
R=brianwilkerson@google.com

Bug: https://github.com/flutter/flutter-intellij/issues/2283
Change-Id: I778f5b06e0f995026219bee32c4a2253aa6595c5
Reviewed-on: https://dart-review.googlesource.com/57704
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-31 19:41:26 +00:00
Konstantin Shcheglov 1a185867a9 Search for element declarations in discovered available files.
R=brianwilkerson@google.com

Change-Id: Idb8d4528aa1edffe60db63067e3d42fd89058b6b
Reviewed-on: https://dart-review.googlesource.com/57700
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-31 17:38:53 +00:00
Jaime Wren 7e899d04ab Add fix-all in file fixes for the 2 additional dart analysis server fix types: USE_NOT_EQ_NULL and USE_EQ_EQ_NULL
Change-Id: Ic8da1d1737145dbd3ddbf5939c327f882a74be24
Reviewed-on: https://dart-review.googlesource.com/57680
Reviewed-by: Jaime Wren <jwren@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Jaime Wren <jwren@google.com>
2018-05-31 17:19:22 +00:00
Jaime Wren 8e00451bc2 Add fix-all in file fixes for the 3 additional dart analysis server fix types: ADD_NE_NULL, REMOVE_UNNECESSARY_CAST, REPLACE_BOOLEAN_WITH_BOOL
Change-Id: Ifb8195e3c68a15faebe91649d86bf94ce9cb2de5
Reviewed-on: https://dart-review.googlesource.com/57486
Reviewed-by: Jaime Wren <jwren@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-05-31 16:16:42 +00:00
Jaime Wren b6d20fa975 Enable the fix-all feature for the DartFixKind.ADD_EXPLICIT_CAST fix, tests been added as well.
Change-Id: I3d2273e0814ac14a597648456cd5035ec54360e5
Reviewed-on: https://dart-review.googlesource.com/57120
Reviewed-by: Jaime Wren <jwren@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Jaime Wren <jwren@google.com>
2018-05-30 21:21:03 +00:00
Konstantin Shcheglov 1d323687b3 Use selection to decide whether EXTRACT_LOCAL_VARIABLE and EXTRACT_METHOD are available.
R=brianwilkerson@google.com

Bug: https://github.com/Dart-Code/Dart-Code/issues/959
Change-Id: I64af87f26bbc26527011c34194a064a01e2d263e
Reviewed-on: https://dart-review.googlesource.com/57060
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-29 20:33:06 +00:00
Konstantin Shcheglov 17afa8ef56 Give private parameters public names for constructor.
R=brianwilkerson@google.com

Bug: https://github.com/flutter/flutter-intellij/issues/2284
Change-Id: I091c1f557266aa2442ad0fd047ca745996332f4d
Reviewed-on: https://dart-review.googlesource.com/57040
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-05-29 19:34:36 +00:00
Jaime Wren ca7d545df8 Follow up on initial fix-all fixes PR, https://dart-review.googlesource.com/c/sdk/+/56220, adding some assertions and a test.
Change-Id: I6e22f8537f616ce2d09247f90bb81fff17eb1b66
Reviewed-on: https://dart-review.googlesource.com/56601
Commit-Queue: Jaime Wren <jwren@google.com>
Reviewed-by: Jaime Wren <jwren@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-05-24 22:29:45 +00:00