changer l'API de base.bool
This commit is contained in:
parent
938b12245f
commit
2a1807565d
|
@ -1 +1 @@
|
||||||
004002000
|
005000000
|
||||||
|
|
|
@ -29,19 +29,19 @@ function yesval() {
|
||||||
is_yes "$1" && echo 1
|
is_yes "$1" && echo 1
|
||||||
}
|
}
|
||||||
|
|
||||||
function _setb() {
|
function setb() {
|
||||||
# Lancer la commande $2..@ en supprimant l'affichage standard et d'erreur. Si la
|
# Lancer la commande $2..@ en supprimant la sortie standard. Si la commande
|
||||||
# commande retourne vrai, assigner la valeur 1 à la variable $1. Sinon, lui
|
# retourne vrai, assigner la valeur 1 à la variable $1. Sinon, lui assigner la
|
||||||
# assigner la valeur ""
|
# valeur ""
|
||||||
# note: en principe, la syntaxe est '_setb var cmd args...'. cependant, la
|
# note: en principe, la syntaxe est 'setb var cmd args...'. cependant, la
|
||||||
# syntaxe '_setb var=cmd args...' est supportée aussi
|
# syntaxe 'setb var=cmd args...' est supportée aussi
|
||||||
local __s_var="$1"; shift
|
local __s_var="$1"; shift
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
if [[ "$__s_var" == *=* ]]; then
|
||||||
set -- "${__s_var#*=}" "$@"
|
set -- "${__s_var#*=}" "$@"
|
||||||
__s_var="${__s_var%%=*}"
|
__s_var="${__s_var%%=*}"
|
||||||
fi
|
fi
|
||||||
local __s_r
|
local __s_r
|
||||||
if "$@" >&/dev/null; then
|
if "$@" >/dev/null; then
|
||||||
eval "$__s_var=1"
|
eval "$__s_var=1"
|
||||||
else
|
else
|
||||||
__s_r=$?
|
__s_r=$?
|
||||||
|
@ -49,17 +49,27 @@ function _setb() {
|
||||||
return $__s_r
|
return $__s_r
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
function _setb() {
|
||||||
|
# Comme la fonction setb() mais ne supporte que la syntaxe '_setb var cmds...'
|
||||||
|
# Cette fonction est légèrement plus rapide que setb()
|
||||||
|
local __s_var="$1"; shift
|
||||||
|
if "$@" >/dev/null; then
|
||||||
|
eval "$__s_var=1"
|
||||||
|
else
|
||||||
|
eval "$__s_var="
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
function evalb() {
|
function evalb() {
|
||||||
# Lancer les commandes $@ avec evalx() en supprimant l'affichage standard et
|
# Lancer la commande $@ avec evalx() en supprimant la sortie standard. Si la
|
||||||
# d'erreur. Si les commandes retournent vrai, afficher 1. Sinon, afficher ""
|
# commande retourne vrai, afficher 1. Sinon, afficher ""
|
||||||
if evalx "$@" >&/dev/null; then
|
if evalx "$@" >/dev/null; then
|
||||||
echo 1
|
echo 1
|
||||||
else
|
else
|
||||||
return $?
|
return $?
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
function setb() {
|
function setxb() {
|
||||||
# équivalent à setx $1 evalb $2..@
|
# équivalent à setx $1 evalb $2..@
|
||||||
local __s_var="$1"; shift
|
local __s_var="$1"; shift
|
||||||
if [[ "$__s_var" == *=* ]]; then
|
if [[ "$__s_var" == *=* ]]; then
|
||||||
|
|
Loading…
Reference in New Issue