43 lines
1.5 KiB
Dart
43 lines
1.5 KiB
Dart
// Copyright (c) 2015, 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.
|
|
|
|
/**
|
|
* Support for client code that extends command-line tools that use the analysis
|
|
* engine by adding new command-line arguments.
|
|
*/
|
|
library analyzer.plugin.command_line;
|
|
|
|
import 'package:analyzer/src/plugin/command_line_plugin.dart';
|
|
import 'package:args/args.dart';
|
|
import 'package:plugin/plugin.dart';
|
|
|
|
/**
|
|
* The identifier of the extension point that allows plugins to add new flags
|
|
* and options to the command-line parser before the parser is used to parse
|
|
* the command-line. The object used as an extension must be an
|
|
* [ArgParserContributor].
|
|
*/
|
|
final String PARSER_CONTRIBUTOR_EXTENSION_POINT_ID = Plugin.join(
|
|
CommandLinePlugin.UNIQUE_IDENTIFIER,
|
|
CommandLinePlugin.PARSER_CONTRIBUTOR_EXTENSION_POINT);
|
|
|
|
/**
|
|
* The identifier of the extension point that allows plugins to access the
|
|
* result of parsing the command-line. The object used as an extension must be
|
|
* an [ArgResultsProcessor].
|
|
*/
|
|
final String RESULT_PROCESSOR_EXTENSION_POINT_ID = Plugin.join(
|
|
CommandLinePlugin.UNIQUE_IDENTIFIER,
|
|
CommandLinePlugin.RESULT_PROCESSOR_EXTENSION_POINT);
|
|
|
|
/**
|
|
* A function that will contribute flags and options to the command-line parser.
|
|
*/
|
|
typedef void ArgParserContributor(ArgParser parser);
|
|
|
|
/**
|
|
* A function that will process the results of parsing the command-line.
|
|
*/
|
|
typedef void ArgResultsProcessor(ArgResults results);
|