HEX
Server: nginx/1.22.0
System: Linux iZuf6jdxbygmf6cco977lcZ 5.10.84-10.4.al8.x86_64 #1 SMP Tue Apr 12 12:31:07 CST 2022 x86_64
User: root (0)
PHP: 7.4.29
Disabled: passthru,exec,system,chroot,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_restore,dl,readlink,symlink,popepassthru,stream_socket_server,fsocket,popen
Upload Files
File: //usr/share/bash-completion/completions/function
# bash shell function completion                           -*- shell-script -*-

_function()
{
    local cur prev words cword
    _init_completion || return

    if [[ $1 == @(declare|typeset) ]]; then
        if [[ $cur == [-+]* ]]; then
            local opts
            opts=( $( _parse_usage "$1" ) )
            # Most options also have a '+' form.  We'll exclude the ones that don't with compgen.
            opts+=( ${opts[*]/-/+} )
            COMPREPLY=( $( compgen -W "${opts[*]}" -X '+[Ffgp]' -- "$cur" ) )
        else
            local i=1
            while [[ ${words[i]} == [-+]* ]]; do
                if [[ ${words[i]} == -*[fF]* ]]; then
                    COMPREPLY=( $( compgen -A function -- "$cur" ) )
                    return
                fi
                ((i++))
            done
            if [[ $i -gt 1 ]]; then
                # There was at least one option and it was not one that limited operations to functions
                COMPREPLY=( $( compgen -A variable -- "$cur" ) )
            fi
        fi
    elif [[ $cword -eq 1 ]]; then
        COMPREPLY=( $( compgen -A function -- "$cur" ) )
    else
        COMPREPLY=( "() $( type -- ${words[1]} | command sed -e 1,2d )" )
    fi
} &&
complete -F _function function declare typeset

# ex: filetype=sh