26102c5d52
This renames the old screen, "Legacy plugins" and adds a new screen, "Plugins". On the new plugins screen, we ask the plugins isolate(s) for their plugins details, and print the following, for eadh plugin: * the plugin's name * the names of the registered lint rules * the names of the registered warning rules * the IDs and "messages" of the registered assists * the IDs and "messages" and associated diagnostic codes of the registered quick fixes More to come in follow ups: * The resolved versions of plugin packages (coming from package_config.json) Change-Id: Ic3dc4c5bffa64fd4da4097c042a847cc064e41ce Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/447763 Commit-Queue: Samuel Rawlins <srawlins@google.com> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
29 lines
906 B
Dart
29 lines
906 B
Dart
// Copyright (c) 2024, 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.
|
|
|
|
/// @docImport 'package:analysis_server_plugin/src/plugin_server.dart';
|
|
library;
|
|
|
|
import 'dart:async';
|
|
|
|
import 'package:analysis_server_plugin/registry.dart';
|
|
|
|
abstract class Plugin {
|
|
/// A user-visible name for this plugin, used for error-reporting and
|
|
/// insights-reporting purposes.
|
|
String get name;
|
|
|
|
/// Registers analysis rules, quick fixes, and assists.
|
|
FutureOr<void> register(PluginRegistry registry);
|
|
|
|
FutureOr<void> shutDown() {}
|
|
|
|
/// Initializes any necessary start-up state that is required for this plugin
|
|
/// to run.
|
|
///
|
|
/// This is called once by the plugin server, in [PluginServer.initialize],
|
|
/// per analysis context.
|
|
FutureOr<void> start() {}
|
|
}
|