update evaluation

This commit is contained in:
2026-08-05 14:26:38 +02:00
parent 979ab999ad
commit 7e9cc43f89
+22 -20
View File
@@ -214,7 +214,8 @@ parse_rules() {
[[ "$line" =~ ^# ]] && continue [[ "$line" =~ ^# ]] && continue
case "$line" in case "$line" in
if:) "- conditions:")
# finalize previous rule
finalize_rule "$current_conditions" "$current_variables" finalize_rule "$current_conditions" "$current_variables"
current_conditions="" current_conditions=""
@@ -222,34 +223,35 @@ parse_rules() {
mode="conditions" mode="conditions"
;; ;;
set:) "set:")
mode="variables" mode="variables"
;; ;;
*) -*)
case "$mode" in if [[ "$mode" == "conditions" ]]; then
conditions) line="${line#- }"
if [[ -n "$current_conditions" ]]; then
current_conditions+=$'\n'
fi
current_conditions+="$line"
;;
variables) if [[ -n "$current_conditions" ]]; then
if [[ -n "$current_variables" ]]; then current_conditions+=$'\n'
current_variables+=$'\n' fi
fi
current_variables+="$line"
;;
*) current_conditions+="$line"
echo "Unexpected line outside of if:/set: block: $line" fi
;; ;;
esac
*=*)
if [[ "$mode" == "variables" ]]; then
if [[ -n "$current_variables" ]]; then
current_variables+=$'\n'
fi
current_variables+="$line"
fi
;; ;;
esac esac
done <<< "${RULES:-}" done <<< "${RULES:-}"
# process last rule
finalize_rule "$current_conditions" "$current_variables" finalize_rule "$current_conditions" "$current_variables"
} }