public function __construct(CommandBase $command, $given, $required)
 {
     $this->given = $given;
     $this->required = $required;
     parent::__construct($command, "Insufficient arguments for command '{$command->getName()}', which requires {$required} arguments, {$given} given.");
 }
 public function __construct(CommandBase $command, $name)
 {
     $this->name = $name;
     parent::__construct($command, "Command {$name} not found.");
 }
 public function __construct(CommandBase $command, $argIndex, $arg)
 {
     $this->argIndex = $argIndex;
     $this->arg = $arg;
     parent::__construct($command, "Invalid '{$command->getName()}' command argument '{$arg}' at position {$argIndex}");
 }