# bandwhich completion                                      -*- shell-script -*-

_bandwhich()
{
    local cur prev flags opts
    COMPREPLY=()
    cur="${COMP_WORDS[COMP_CWORD]}"
    prev="${COMP_WORDS[COMP_CWORD-1]}"
    flags="--addresses --connections --help --no-resolve
            --processes --raw --show-dns --total-utilization --version"
    opts="--dns-server --interface"

    interfaces=$(ip link show | grep -o ": .*:" | sed 's/[: ]//g' | tr '\n' ' ')
    case "${prev}" in
        --interface)
            COMPREPLY=( $(compgen -W "${interfaces}" -- "${cur}"))
            return
            ;;
    esac

    case "${cur}" in
        --interface)
            COMPREPLY=( $(compgen -W "${interfaces}"))
            ;;
        -*)
            COMPREPLY=( $(compgen -W "${flags} ${opts}" -- "${cur}"))
            ;;
    esac
} &&

complete -o nospace -F _bandwhich bandwhich
