mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
This converts Diagnosticable to be a mixin instead of an abstract class, so that it can be used to add diagnostics to classes which already have a base class. It leaves in place the DiagnosticableMixin mixin, since there are some plugins that are still using it, and removing it would mean that those plugins wouldn't work with master branch Flutter anymore. DiagnosticableMixin will be removed once this mixin version of Diagnosticable makes its way to the stable branch.
The rule for packages in this directory is that they can depend on
nothing but core Dart packages. They can't depend on dart:ui, they
can't depend on any package:, and they can't depend on anything
outside this directory.
Currently they do depend on dart:ui, but only for VoidCallback and
hashValues (and maybe one day hashList and lerpDouble), which
are all intended to be moved out of dart:ui and into dart:core.
See also:
- https://github.com/dart-lang/sdk/issues/27791 (
VoidCallback) - https://github.com/dart-lang/sdk/issues/25217 (
hashValues,hashList, andlerpDouble)