953399512a
To facilitate experimentation, I've left the old code in place, but disabled it using a const bool `fullTopLevelInference`. The old code can be re-enabled by setting this bool to `false`. Once we are sure that we want to proceed with this approach, we can remove the old code. I believe that with this change, all expressions that can be type inferred inside a method body can now be type inferred at top level, provided that there are no circular dependencies. R=sigmund@google.com Review-Url: https://codereview.chromium.org/2942153002 .
Front end for Dart
This package provides a low-level API for use by compiler back ends that wish to implement the Dart language. It is intended for eventual use by dev_compiler, dart2js, and the Dart VM. In addition, it will share implementation details with the analyzer package--this will be accomplished by having the analyzer package import (and re-export) parts of this package's private implementation.
End-users should use the [dartanalyzer][analyzercli] command-line tool to analyze their Dart code.
Integrators that want to write tools that analyze Dart code should use the [analyzer] package.
Note: The APIs in this package are in an early state; developers should be careful about depending on this package.