protected function doAction(Command $command)
    {
        if ($command->name() === '__default__') {
            return $this->notFound();
        }

        // Let the command collect more data (if missing or needs confirmation)
        $command->interact($this->io());

        if (!$command->action() && !\method_exists($command, 'execute')) {
            return;
        }

        $params = [];
        $values = $command->values();
        // We prioritize action to be in line with commander.js!
        $action = $command->action() ?? [$command, 'execute'];

        foreach ($this->getActionParameters($action) as $param) {
            $params[] = $values[$param->getName()] ?? null;
        }

        return $action(...$params);
    }
protected function doAction(Command $command)
    {
        if ($command->name() === '__default__') {
            return $this->notFound();
        }

        // Let the command collect more data (if missing or needs confirmation)
        $command->interact($this->io());

        if (!$command->action() && !\method_exists($command, 'execute')) {
            return;
        }

        $params = [];
        $values = $command->values();
        // We prioritize action to be in line with commander.js!
        $action = $command->action() ?? [$command, 'execute'];

        foreach ($this->getActionParameters($action) as $param) {
            $params[] = $values[$param->getName()] ?? null;
        }

        return $action(...$params);
    }
protected function doAction ( Command $ command ) { if ( $ command -> name ( ) === '__default__' ) { return $ this -> notFound ( ) ; } // Let the command collect more data (if missing or needs confirmation) $ command -> interact ( $ this -> io ( ) ) ; if ( ! $ command -> action ( ) && ! \ method_exists ( $ command , 'execute' ) ) { return ; } $ params = [ ] ; $ values = $ command -> values ( ) ; // We prioritize action to be in line with commander.js! $ action = $ command -> action ( ) ?? [ $ command , 'execute' ] ; foreach ( $ this -> getActionParameters ( $ action ) as $ param ) { $ params [ ] = $ values [ $ param -> getName ( ) ] ?? null ; } return $ action ( ... $ params ) ; }
Invoke command action.

@param Command $command

@return mixed
Invoke command action .