summaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2015-07-12 07:11:09 -0700
committerKaz Kylheku <kaz@kylheku.com>2015-07-12 07:11:09 -0700
commitc8ae68c761a3b40ec9023e12d3efed679cca4055 (patch)
tree532a812c43249d0e1111626a9d6a0fae65155a1d /share
parent11e1c6cf7531d3a52955651c65cf880de3eed46c (diff)
downloadtxr-c8ae68c761a3b40ec9023e12d3efed679cca4055.tar.gz
txr-c8ae68c761a3b40ec9023e12d3efed679cca4055.tar.bz2
txr-c8ae68c761a3b40ec9023e12d3efed679cca4055.zip
* share/txr/stdlib/place.tl (place-form-p): New function.
* lisplib.c (place_set_entries): Add place-form-p to list of names.
Diffstat (limited to 'share')
-rw-r--r--share/txr/stdlib/place.tl5
1 files changed, 5 insertions, 0 deletions
diff --git a/share/txr/stdlib/place.tl b/share/txr/stdlib/place.tl
index 7bb059a8..f7e468cf 100644
--- a/share/txr/stdlib/place.tl
+++ b/share/txr/stdlib/place.tl
@@ -82,6 +82,11 @@
(makunbound ',',place-expr))))
,*op-body))
+ (defun place-form-p (place)
+ (when (or (bindable place)
+ (and (consp place) [*place-update-expander* (car place)]))
+ t))
+
(defun get-update-expander (place)
(cond
((symbolp place) (fun sys:sym-update-expander))