This package contains Dart bytecode compiler.

## Status: experimental

**NOTE**: This package is currently experimental and not published or
included in the SDK.

Do not take dependency on this package unless you are prepared for
breaking changes and possibly removal of this code at any point in time.
