diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2021-03-19 19:05:19 -0700 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2021-03-19 19:07:10 -0700 |
commit | 04fa2803c85bb9f2309b83a11a1a9b20c8ea44f9 (patch) | |
tree | 55badcbcdcb5fdc4133d1983640489ae5357a5c6 /src/property.lisp | |
parent | ac7fb852767103578b5f16f9cfd204d10bc362a8 (diff) | |
download | consfigurator-04fa2803c85bb9f2309b83a11a1a9b20c8ea44f9.tar.gz |
RECORD-KNOWN-PROPERTY: check whether already known
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'src/property.lisp')
-rw-r--r-- | src/property.lisp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/property.lisp b/src/property.lisp index ec73d26..55ed83c 100644 --- a/src/property.lisp +++ b/src/property.lisp @@ -110,13 +110,14 @@ see MAP-PROPSPEC-PROPAPPS for how they are used.") (defun record-known-property (psym) (setf (get psym 'isprop) t) - (push psym *known-properties*) - (push `(,psym (&rest args) - (let ((gensym (gensym))) - (push (list* gensym ',psym args) - *replaced-propapps*) - gensym)) - *known-property-macrolets*)) + (unless (member psym *known-properties* :test #'eq) + (push psym *known-properties*) + (push `(,psym (&rest args) + (let ((gensym (gensym))) + (push (list* gensym ',psym args) + *replaced-propapps*) + gensym)) + *known-property-macrolets*))) (defun dump-properties-for-emacs (from to) (let ((put-forms |