diff options
author | Felipe Contreras <felipe.contreras@gmail.com> | 2020-12-30 23:29:47 (GMT) |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2021-01-04 23:25:56 (GMT) |
commit | 7f94b78ddabdb49cde32b088ca66b422e7cda628 (patch) | |
tree | 575e516ab25d3a43b48e35b2cad3d5e0afcfe4aa /contrib/completion/git-completion.bash | |
parent | 71ca53e8125e36efbda17293c50027d31681a41f (diff) | |
download | git-7f94b78ddabdb49cde32b088ca66b422e7cda628.zip git-7f94b78ddabdb49cde32b088ca66b422e7cda628.tar.gz git-7f94b78ddabdb49cde32b088ca66b422e7cda628.tar.bz2 |
completion: bash: add __git_have_func helper
This makes the code more readable, and also will help when new code
wants to do similar checks.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'contrib/completion/git-completion.bash')
-rw-r--r-- | contrib/completion/git-completion.bash | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash index 463a312..869c73e 100644 --- a/contrib/completion/git-completion.bash +++ b/contrib/completion/git-completion.bash @@ -3358,15 +3358,19 @@ __git_support_parseopt_helper () { esac } +__git_have_func () { + declare -f $1 >/dev/null 2>/dev/null +} + __git_complete_command () { local command="$1" local completion_func="_git_${command//-/_}" - if ! declare -f $completion_func >/dev/null 2>/dev/null && - declare -f _completion_loader >/dev/null 2>/dev/null + if ! __git_have_func $completion_func && + __git_have_func _completion_loader then _completion_loader "git-$command" fi - if declare -f $completion_func >/dev/null 2>/dev/null + if __git_have_func $completion_func then $completion_func return 0 |