The analysis package defines support for performing static analysis of Dart code. It was designed to support tooling efforts, but has also been used for such things as statistics gathering and code transformers.

If you are interested in providing Dart support in a long-running tool, such as an editor or IDE, you should use the analysis server instead of this package. The analysis server is currently shipped as an executable in the SDK and will be released as a package in the near future. In the meantime, if you'd like to learn more about it, please look at the Analysis Server API Specification or contact the mailing list (see below).

The API's in this package are, quite frankly, a mess at the moment. They were originally machine generated by a translator and were based on an earlier Java implementation. Several of the API's still look like their Java predecessors (or worse) rather than clean Dart API's.

In addition, there is currently no clean distinction between public and internal API's. We plan to address this issue soon, but doing so will, unfortunately, require a large number of breaking changes. We will try to minimize the pain this causes for our clients, but some pain is inevitable.

Questions and requests for additional functionality are welcome, and can be made by either opening an issue at http://dartbug.com or by emailing [email protected].

Libraries

analyzer
analyzer.plugin.command_line

Support for client code that extends command-line tools that use the analysis engine by adding new command-line arguments.

analyzer.plugin.options

Support for client code that wants to consume options contributed to the analysis options file.

analyzer.plugin.task

Support for client code that extends the analysis engine by adding new analysis tasks.

analyzer.task.dart
analyzer.task.general
analyzer.task.html
analyzer.task.model
file_instrumentation
file_system
instrumentation
memory_file_system
physical_file_system
source.analysis_options_provider
source.package_map_provider
source.package_map_resolver
source.path_filter
source.pub_package_map_provider
source.sdk_ext
test
test2
test3