diff --git a/general_utils b/general_utils index ae8dcfe..f45b33a 100755 --- a/general_utils +++ b/general_utils @@ -80,4 +80,35 @@ if [ "${general_utils_sourced:-1}" = "1" ]; then # include only once echo "INFO: $2 completed successfully" >&2 fi } + + assert_s () { + if [ -z ${!1} ]; then + log_fatal "$1 not set" + fi + log_debug "$1=${!1}" + } + + assert_d () { + if [ ! -d ${!1} ]; then + log_fatal "$1 does not exist" + fi + log_debug "$1=${!1}" + } + + assert_f () { + if [ ! -f ${!1} ]; then + log_fatal "$1 does not exist" + fi + log_debug "$1=${!1}" + } + + assert_a () { + local readonly __m="${1}[@]" + local readonly __n=(${!__m}) + local __len=${#__n[@]} + if [ $__len -eq 0 ]; then + log_fatal "$1 not set" + fi + log_debug "$1=$__n" + } fi