Move parameter guarding into its own module

This commit is contained in:
BirDt_ 2026-04-06 13:08:36 +08:00
parent 65a60a2a65
commit 71e92641f7
2 changed files with 14 additions and 7 deletions

13
engine/guards.scm Normal file
View file

@ -0,0 +1,13 @@
(module (engine guards) ()
(import scheme
(chicken base)
(chicken module))
;; Utility function for guarding parameter values
(export guarded-parameter)
(define (guarded-parameter default predicate)
(make-parameter default (lambda (val)
(if (predicate val)
val
default))))
)