22 Parameter utilities
(require (planet untyped/unlib/parameter)) |
Convenience forms for working with parameters.
Creates a procedure that may be used as a parameter’s guard procedure. The guard only allows values for which pred returns #t. If an invalid value is supplied, the guard raises exn:fail:contract with an error message based on the supplied type-message.
make-guard has been superseded by the parameter/c contract in PLT 4.
Examples: | ||
| ||
> (param 1) | ||
> (param #f) | ||
> (param #t) | ||
Expected (U integer #f), received #t |
Convenience form that expands into two definitions:
id is bound to a parameter with the supplied initial-value and guard-proc;
with-form-id is bound to a syntax of the form:
(with-form-id expr body ...) that expands to:
(parameterize ([id expr]) body ...)
Examples: | ||||
| ||||
> (with-foo 10 (foo)) | ||||
10 | ||||
> (with-foo "bar" 10) | ||||
Expected (U integer #f), received "bar" |