namespace Spectre.Console.Cli; /// /// Base class for an asynchronous command with no settings. /// public abstract class AsyncCommand : ICommand { /// /// Executes the command. /// /// The command context. /// A that can be used to abort the command. /// An integer indicating whether or not the command executed successfully. public abstract Task ExecuteAsync(CommandContext context, CancellationToken cancellationToken); /// Task ICommand.ExecuteAsync(CommandContext context, EmptyCommandSettings settings, CancellationToken cancellationToken) { return ExecuteAsync(context, cancellationToken); } /// Task ICommand.ExecuteAsync(CommandContext context, CommandSettings settings, CancellationToken cancellationToken) { return ExecuteAsync(context, cancellationToken); } /// ValidationResult ICommand.Validate(CommandContext context, CommandSettings settings) { return ValidationResult.Success(); } }