xecuteCommandCompletion
    :: Params
    -> (Shell -> Natural -> [Text] -> Command)
    -- ^ Function that constructs completion command, i.e. command that will be
    -- executed to provide completion.
    -> Shell
    -> Word
    -> [String]
    -> IO ()
executeCommandCompletion params mkCommand shell index words =
    executeCommand' params
        (mkCommand shell (fromIntegral index) (fromString <$> words))

executeCommandCompletion
    :: Params
    -> (Shell -> Natural -> [Text] -> Command)
    -- ^ Function that constructs completion command, i.e. command that will be
    -- executed to provide completion.
    -> Shell
    -> Word
    -> [String]
    -> IO ()
executeCommandCompletion params mkCommand shell index words =
    executeCommand' params
        (mkCommand shell (fromIntegral index) (fromString <$> words))
executeCommandCompletion params mkCommand shell index words =
    executeCommand' params
        (mkCommand shell (fromIntegral index) (fromString <$> words))