Nyquist / XLISP 2.0 -
Contents |
Tutorials |
Examples |
Reference
cl:values-list
The cl:values-list function returns the elements of a
list unevaluated as multiple values:
- (cl:values-list list)
- list - a list of values
returns - the elements of the list as multiple values
(defun cl:values-list (list)
(or (listp list) (error "not a list" list))
(or (null list) (consp (last list)) (error "not a proper list" list))
(setq *rslt* list
cl:*multiple-values* t)
(first list))
The unevaluated first value from the list is returned as the primary
return value, and the list is assigned to the Nyquist
*rslt* variable. If
an an empty list is given, NIL
is returned and the *rslt*
variable is set to NIL.
An error is signalled if the 'list' argument is not a list or
if the list does not end
with NIL.
The
cl:*multiple-values*
variable is set to
T to indicate that
multiple values are returned.
Examples:
(cl:values-list nil) => NIL ; *rslt* = NIL
(cl:values-list '(1)) => 1 ; *rslt* = (1)
(cl:values-list '(1 2)) => 1 ; *rslt* = (1 2)
(cl:values-list '(1 2 3)) => 1 ; *rslt* = (1 2 3)
(cl:values-list '(1 2 . 3)) => error: not a proper list - (1 2 . 3)
Back to top
Nyquist / XLISP 2.0 -
Contents |
Tutorials |
Examples |
Reference