3156c5629d
This CL implements `Finalizable` by means of a CFE transform. The transform is implemented in the existing FFI transform to avoid the overhead of traversing the AST an extra time. The FFI transform slows down ~15-30% on Flutter Gallery. For more info see the design doc. TEST=`dart pkg/vm/test/transformations/ffi_test.dart` Design doc: go/dart-vm-finalizable Bug: https://github.com/dart-lang/sdk/issues/47777 Change-Id: I0bf9dead90a61631b7f215dc19fbaa9e40e63c8d Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/227501 Reviewed-by: Slava Egorov <vegorov@google.com> Commit-Queue: Daco Harkes <dacoharkes@google.com>
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 dart analyze
command-line tool to analyze their Dart code.
Integrators that want to write tools that analyze Dart code should use the analyzer package.
Note: A previous version of this package was published on pub.dev. It has now been marked DISCONTINUED as it is not intended for direct consumption, as per the notes above.