| # Copyright (c) 2026, the Dart project authors. Please see the AUTHORS file |
| # for details. All rights reserved. Use of this source code is governed by a |
| # BSD-style license that can be found in the LICENSE file. |
| |
| # We make Operation extendable so that dynamic modules can provide their own |
| # definition. |
| extendable: |
| - library: 'common/common.dart' |
| class: 'Operation' |
| |
| # Some members in Operation need to be overridden by dynamic modules to properly |
| # implement the interface. |
| can-be-overridden: |
| - library: 'common/common.dart' |
| class: 'Operation' |
| |
| # Dynamic modules must define a `void Function(Registry)` and as such, need to |
| # refer to the Registry as a type. |
| can-be-used-as-type: |
| - library: 'common/common.dart' |
| class: 'Registry' |
| - library: 'common/common.dart' |
| class: 'Operation' |
| |
| # These APIs may be invoked by dynamic modules. `dart:math` APIs are used to |
| # implement operations, while `addOperation` is called during the registration |
| # process. |
| callable: |
| - library: 'dart:core' |
| - library: 'dart:math' |
| - library: 'common/common.dart' |
| class: 'Registry' |
| member: 'addOperation' |