Duck util-proc.

This commit is contained in:
Dominik Pantůček 2023-07-05 22:09:07 +02:00
parent 2f1589579e
commit a2c312741b
5 changed files with 109 additions and 64 deletions

View file

@ -162,52 +162,6 @@ sent to the address stored within.
Sends email using mail(1) command. The arguments ```#:to``` and
```#:subject``` are mandatory. Argument ```#:from``` is optional.
### Proc
(import util-proc)
This module provides a few simple procedures for querying properties
of other procedures.
((procedure-arity=? n) proc)
* ```n``` - integer representing the number of arguments
* ```proc``` - procedure to query
Returns true if the procedure ```proc``` accepts exactly ```n```
arguments.
((procedure-arity>=? n) proc)
* ```n``` - integer representing the number of arguments
* ```proc``` - procedure to query
Returns true if the procedure ```proc``` accepts at least ```n```
arguments.
((procedure-arity>? n) proc)
* ```n``` - integer representing the number of arguments
* ```proc``` - procedure to query
Returns true if the procedure ```proc``` accepts more than ```n```
arguments.
(procedure-num-args proc)
* ```proc``` - procedure to check
Returns the number of mandatory arguments.
(procedure-arg-names proc)
* ```proc``` - procedure to check
Returns the (possibly improper) list of arguments the procedure
```proc``` accepts. If it accepts arbitrary number of arguments, it is
signalled by simple symbol instead of pair at the last position. If it
accepts an exact number of arguments, it returns a proper list.
### Set (List)
(import util-set-list)