blob: a53c5752b8fe65706112c91b25aa253fbc4a16af [file] [log] [blame]
// Copyright (c) 2012, 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.
library pub.command.help;
import 'dart:async';
import 'dart:io' as io;
import '../command.dart';
import '../exit_codes.dart' as exit_codes;
import '../io.dart';
import '../log.dart' as log;
/// Handles the `help` pub command.
class HelpCommand extends PubCommand {
String get description => "Display help information for Pub.";
String get usage => 'pub help [command]';
bool get requiresEntrypoint => false;
Future onRun() {
if (commandOptions.rest.isEmpty) {
printUsage();
} else {
var name = commandOptions.rest[0];
var command = PubCommand.commands[name];
if (command == null) {
log.error('Could not find a command named "$name".');
log.error('Run "pub help" to see available commands.');
io.exit(exit_codes.USAGE);
}
command.printUsage();
}
}
}