3d67e6f998
Some notes. 1. `Token.next` is `Token?` because there are null(s) for comment tokens. But I think that it is never `null` in code, because there is at least EOF token. So, lots of `!` null checks. 2. `Link.tail` is never null when `isNotEmpty`, but the type system cannot express it. So, some number of `!` null checks. 3. I keep assert(s) for now, and use comment `// ignore: unnecessary_null_comparison`. 4. I disabled `can_get_rid_of_nnbd_issue_error`, I think it fails because of changes in `_fe_analyzer_shared` language version. Smoke test in google3 looks green. https://test.corp.google.com/ui#id=OCL:346825148:BASE:346841611:1607632317129:6e87bf7 I have not tried yet full TAP, will do in the evening. I have not tried yet Golem, or looked at benchmarks. Change-Id: I651301e5d3a851dd77d73af960dac779cb0fc991 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175620 Commit-Queue: Konstantin Shcheglov <scheglov@google.com> Reviewed-by: Paul Berry <paulberry@google.com>
FE/analyzer shared code
This package contains logic that is shared between the front_end and analyzer packages. It is intended solely to facilitate development of the Dart SDK, and is not intended for use by end users. In particular, this package has no public API, so no guarantee is made of compatibility between one version of the package and the next.
End users should consider using the analyzer package to analyze Dart source code.