Commit graph

297 commits

Author SHA1 Message Date
Paul Berry 4eee6cb5ea Fix constructor invocation type inference.
Three problems are fixed:

- I forgot to pass the `downwards` flag when doing downwards inference.

- I forgot to initialize the `formalTypes` and `actualTypes` arrays.

- I wasn't tracking whether constructor type arguments were implicit
  or explicit, so constructor type inference wasn't actually
  happening.

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2864853002 .
2017-05-08 14:41:56 -07:00
Brian Wilkerson f05ecff43d Add more conversion utilities
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2867163002 .
2017-05-08 13:40:58 -07:00
Brian Wilkerson 9ca84e15f4 Improve default support provided for plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2861373005 .
2017-05-08 10:01:35 -07:00
Konstantin Shcheglov cc91d04514 Use FileSystem to read files in SourceLoader and TranslateUri.
This is a prerequisite for writing fast unit tests, as I would like
to do while working on the incremental kernel driver.

R=ahe@google.com, paulberry@google.com, sigmund@google.com
BUG=

Review-Url: https://codereview.chromium.org/2865843002 .
2017-05-06 13:09:28 -07:00
P.Y. Laligand 21e9c40b8f Disable analysis on a few packages. (#29571) 2017-05-05 22:06:00 -07:00
Brian Wilkerson c1c17946fe Missed one path when fixing Window bots (TBR)
Review-Url: https://codereview.chromium.org/2862973003 .
2017-05-05 09:33:34 -07:00
Brian Wilkerson eecb358dd4 Attempt to fix failures on Windows bots (TBR)
Review-Url: https://codereview.chromium.org/2864653002 .
2017-05-05 08:53:00 -07:00
Brian Wilkerson 6c2023bd07 Move ChangeBuilder to analyzer_plugin
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2860383002 .
2017-05-05 07:52:27 -07:00
Paul Berry de32b9a32a Hook up full list literal type inference logic.
AFAIK this is the full algorithm for list literal inference.  But some
list literal tests still don't pass.  I will investigate and fix in
future CLs.

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2863733003 .
2017-05-05 04:23:39 -07:00
Paul Berry 28f277a7e2 Implement inferTypeFromConstraints in front_end.
This is an intermediate algorithm used in type inference.  It
corresponds to the method _GenericInferrer.infer() in analyzer.

R=jmesserly@google.com, scheglov@google.com

Note: error reporting will be added in a follow-up CL.
Review-Url: https://codereview.chromium.org/2863823002 .
2017-05-04 16:32:32 -07:00
Konstantin Shcheglov f7c8c7e3ef Infer AsExpression types.
R=paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2862043002 .
2017-05-04 13:27:47 -07:00
Paul Berry 932a749bbc Begin implementing subtype matching for type inference.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2856383003 .
2017-05-04 08:40:45 -07:00
Brian Wilkerson 84ca84b1a7 Implement more of the behavior of a plugin; refactor some API
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2857233002 .
2017-05-03 12:48:39 -07:00
Brian Wilkerson 9eee213363 Fix bugs found while working on tests
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2849253002 .
2017-05-02 06:15:25 -07:00
danrubel c8784af933 rename .analysis_options --> analysis_options.yaml
See https://github.com/dart-lang/sdk/issues/28385

R=brianwilkerson@google.com, vsm@google.com

Review-Url: https://codereview.chromium.org/2839383003 .
2017-04-30 18:33:10 -04:00
Brian Wilkerson 91fede471f Re-organize and comment clean-up
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2846963004 .
2017-04-28 09:09:59 -07:00
Brian Wilkerson e55812a3f2 Unify the server and plugin versions of the generators
R=devoncarew@google.com

Review-Url: https://codereview.chromium.org/2844273003 .
2017-04-28 07:46:29 -07:00
Devon Carew eb1839b8fd Minor changes to the generated spec, and display deprecated methods better.
BUG=
R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2800283002 .
2017-04-15 13:43:36 -07:00
Brian Wilkerson 385cbc3839 Apply changes made to server spec generator
R=messick@google.com

Review-Url: https://codereview.chromium.org/2787703003 .
2017-03-30 10:04:40 -07:00
Brian Wilkerson d3c926b089 Fix errors in analyzer
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2772473004 .
2017-03-23 11:26:49 -07:00
Devon Carew f486a21d8f Run dartfmt on additional generated files.
BUG=

Review-Url: https://codereview.chromium.org/2762413002 .
2017-03-21 16:23:43 -07:00
Devon Carew a231501692 Format generated files.
BUG=
R=brianwilkerson@google.com, jacobr@google.com

Review-Url: https://codereview.chromium.org/2765953002 .
2017-03-21 15:54:16 -07:00
Jacob Richman 3688edaa17 Roll back two files that shouldn't have had dartfmt run.
BUG=

Review-Url: https://codereview.chromium.org/2757753003 .
2017-03-16 16:56:20 -07:00
Jacob Richman a993294503 Format all analyzer packages
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2753923003 .
2017-03-16 16:11:43 -07:00
Paul Berry c78b4d66bb Move some of analyzer's code generation utilities into front_end.
These utilities are needed for generating the code that supports
summaries; in order to move summary logic into front_end, we will need
these code generation tools in front_end as well.

Also make a minor change to summary code generation logic so that it
talks to the file system directly rather than depending on analyzer's
file system abstraction.

R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2742333005 .
2017-03-14 12:30:18 -07:00
Brian Wilkerson 27338f8d20 Missed clean-up from the last CL
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2748663003 .
2017-03-13 11:31:17 -07:00
Brian Wilkerson c91736b8e5 Fix bugs and add instrumentation
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2748683003 .
2017-03-13 10:12:25 -07:00
Brian Wilkerson 67b7952cf0 Update plugin spec to match server spec changes
R=pquitslund@google.com

Review-Url: https://codereview.chromium.org/2739473007 .
2017-03-08 13:41:20 -08:00
Devon Carew 42cd232ba5 Fix pkg/analyzer_plugin/tool/spec/check_all_test.
BUG=

Review-Url: https://codereview.chromium.org/2715853003 .
2017-02-23 21:07:32 -08:00
Devon Carew 0f7fc43df5 Remove the --no-error-notification flag.
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2713053002 .
2017-02-23 16:55:46 -08:00
Devon Carew 9793406f08 Switch to using expectAsync0() to address some deprecation warnings.
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2701473009 .
2017-02-17 09:39:23 -08:00
Devon Carew 4667e59e85 Add integration tests for the execution domain.
BUG=
R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2691763002 .
2017-02-12 11:23:33 -08:00
Devon Carew d60a930ccd Commit updated metadata; this should reduce scm churn.
BUG=
R=paulberry@google.com

Review-Url: https://codereview.chromium.org/2692573005 .
2017-02-10 15:31:27 -08:00
Konstantin Shcheglov f120d02f92 Enable Dart for all modules.
R=devoncarew@google.com
BUG=

Review-Url: https://codereview.chromium.org/2686183004 .
2017-02-10 13:27:55 -08:00
Devon Carew 86a235e219 Add intellij metadata to the repo.
BUG=
R=pquitslund@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2689673003 .
2017-02-10 12:47:06 -08:00
Brian Wilkerson 6ca3a29f2f Rename generated file
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2686933002 .
2017-02-08 13:26:02 -08:00
Brian Wilkerson f70f023261 Add an interface for request parameters
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2679093004 .
2017-02-08 07:44:09 -08:00
Brian Wilkerson 82d0383566 Revert "Add an interface for request parameters"
Review-Url: https://codereview.chromium.org/2683583004 .
2017-02-07 13:34:58 -08:00
Brian Wilkerson 41685ccf9a Add an interface for request parameters
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2680053002 .
2017-02-07 12:54:02 -08:00
Brian Wilkerson 4a40efa4c7 Add a priority to source changes for assists and fixes
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2678263005 .
2017-02-07 09:11:55 -08:00
Brian Wilkerson 37720f012f Use toList to copy lists and clean up errors and warnings
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2685613002 .
2017-02-07 09:00:09 -08:00
Brian Wilkerson 17a447c89e Update plugin spec
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2677663003 .
2017-02-07 08:03:15 -08:00
Brian Wilkerson b22f453a87 Add server-side communications channel
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2676633003 .
2017-02-02 10:47:12 -08:00
Brian Wilkerson 81397c00aa Add top-level driver and abstract plugin superclass
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2667823003 .
2017-01-31 13:41:56 -08:00
Brian Wilkerson d8129ae0c9 Add a channel to communication with server
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2666143002 .
2017-01-31 13:07:22 -08:00
Brian Wilkerson 95c777fe7e Add the generator and the generated files
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2664213003 .
2017-01-31 12:36:17 -08:00
Brian Wilkerson 53f498ad6d Create the directory for the plugin package
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2659523006 .
2017-01-30 13:21:37 -08:00