daa9b8e31b
In order to support primary constructors we need to have two new refactors that will add and remove a constructor name. Rather than duplicate the logic in the RenameConstructor class, I want to reuse it. In order to do that, I need to be able to pass in a ChangeBuilder. This CL accomplishes that goal by making it possible to pass in a ChangeBuilder to any refactoring, even though in most cases the ChangeBuilder will be ignored. In the future I intend that all of the refactors will be updated to use the passed in ChangeBuilder, but that would have been too big for a single CL. Beyond that, I did make one other change, which is that the refactor now supports classes with an empty body (`;`). I added a test for the new functionality, but I believe that the existing tests should be adequate to ensure that there was no loss of functionality. This does not add support to RenameConstructor to deal with primary constructors. That will also happen in a follow-on CL. Change-Id: I51749e9cd1d775744dc6e64c1dc67967ef492d45 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/488527 Reviewed-by: Samuel Rawlins <srawlins@google.com> Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
analysis_server
A long-running process that provides analysis results to other tools.
The analysis server is designed to provide on-going analysis of one or more code bases as those code bases are changing.
Using the server
The analysis server is not intended to be used stand-alone, and therefore does not have a human-friendly user interface.
Clients (typically tools, such as an editor) are expected to run the analysis
server in a separate process and communicate with it using a JSON protocol. The
original protocol is specified in the file analysis_server/doc/api.html
and Language Server Protocol support is documented in
tool/lsp_spec/README.md.
Features and bugs
Please file feature requests and bugs at the issue tracker.