#compdef git-warp-time

autoload -U is-at-least

_git-warp-time() {
    typeset -A opt_args
    typeset -a _arguments_options
    local ret=1

    if is-at-least 5.2; then
        _arguments_options=(-s -S -C)
    else
        _arguments_options=(-s -C)
    fi

    local context curcontext="$curcontext" state line
    _arguments "${_arguments_options[@]}" : \
'-d[Include files tracked by Git but modifications in the working tee]' \
'--dirty[Include files tracked by Git but modifications in the working tee]' \
'-i[Include files tracked by Git but also ignored]' \
'--ignored[Include files tracked by Git but also ignored]' \
'-o[Only touch files that are newer than their history, ignore ones that are older]' \
'--ignore-older[Only touch files that are newer than their history, ignore ones that are older]' \
'-q[Don'\''t print any output about files touched or skipped]' \
'--quiet[Don'\''t print any output about files touched or skipped]' \
'-h[Print help]' \
'--help[Print help]' \
'*::paths -- Optional list of paths to operate on instead of default which is all files tracked by Git:_files' \
&& ret=0
}

(( $+functions[_git-warp-time_commands] )) ||
_git-warp-time_commands() {
    local commands; commands=()
    _describe -t commands 'git-warp-time commands' commands "$@"
}

if [ "$funcstack[1]" = "_git-warp-time" ]; then
    _git-warp-time "$@"
else
    compdef _git-warp-time git-warp-time
fi
