Function COPY-ALIST

UP


Function COPY-ALIST

Function COPY-ALIST

構文

copy-alist alist => new-alist

引数と戻り値

alist - 連想リスト
new-alist - 連想リスト

定義

copy-alistは、alistのコピーを返却します。

alistのリスト構造がコピーされ、 alistの要素のコンスもまたコピーされます (ただしコンスのみ)。 alistによって直接・間接に関わらず、 参照されている他のオブジェクトは、 引き続き共有されます。

例文

(defparameter *alist* (acons 1 "one" (acons 2 "two" '())))
*alist* =>  ((1 . "one") (2 . "two"))
(defparameter *list-copy* (copy-list *alist*))
*list-copy* =>  ((1 . "one") (2 . "two"))
(defparameter *alist-copy* (copy-alist *alist*))
*alist-copy* =>  ((1 . "one") (2 . "two"))
(setf (cdr (assoc 2 *alist-copy*)) "deux") =>  "deux"
*alist-copy* =>  ((1 . "one") (2 . "deux"))
*alist* =>  ((1 . "one") (2 . "two"))
(setf (cdr (assoc 1 *list-copy*)) "uno") =>  "uno"
*list-copy* =>  ((1 . "uno") (2 . "two"))
*alist* =>  ((1 . "uno") (2 . "two"))

副作用

なし。

影響

なし。

例外

なし。

参考

copy-list

備考

なし。


TOP, Github