1 ;;;; This software is part of the SBCL system. See the README file for
4 ;;;; This software is derived from the CMU CL system, which was
5 ;;;; written at Carnegie Mellon University and released into the
6 ;;;; public domain. The software is in the public domain and is
7 ;;;; provided with absolutely no warranty. See the COPYING and CREDITS
8 ;;;; files for more information.
10 (in-package "SB!IMPL")
12 (defmacro-mundanely destructuring-bind
(lambda-list expression
&body body
)
14 "Bind the variables in LAMBDA-LIST to the corresponding values in the
15 tree structure resulting from the evaluation of EXPRESSION."
16 ;; (THE LIST ...) is not really right, because it means that
17 ;; the descriptive message about the lambda list won't be shown.
18 ;; It'll just be type-error.
19 `(binding* ,(sb!c
::expand-ds-bind lambda-list
20 `(the list
,expression
)