aboutsummaryrefslogtreecommitdiff
path: root/src/propspec.lisp
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2021-03-19 10:43:25 -0700
committerSean Whitton <spwhitton@spwhitton.name>2021-03-19 18:56:59 -0700
commitb3b35e2288a65fa18ed0a371675565c380be058f (patch)
tree650608b97748384896f80cbf365175ccf09317bd /src/propspec.lisp
parent03faea5bac3337a23d821078984c12bdbedeb022 (diff)
downloadconsfigurator-b3b35e2288a65fa18ed0a371675565c380be058f.tar.gz
make unpreprocessed propspecs printable
They can appear in what we need to send to the remote Lisp, in :ORIG-ARGS entries for DEFPROPSPEC properties. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'src/propspec.lisp')
-rw-r--r--src/propspec.lisp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/propspec.lisp b/src/propspec.lisp
index 5df0410..e59f1ce 100644
--- a/src/propspec.lisp
+++ b/src/propspec.lisp
@@ -207,6 +207,14 @@ systems."
:systems systems :propspec propspec)
(make-instance 'unpreprocessed-propspec :propspec propspec)))
+(defmethod print-object ((propspec unpreprocessed-propspec) stream)
+ (format stream "#.~S" `(make-instance
+ 'unpreprocessed-propspec
+ :systems ',(slot-value propspec 'systems)
+ :propspec
+ ',(slot-value propspec 'propspec-expression)))
+ propspec)
+
(defmethod print-object ((propspec preprocessed-propspec) stream)
(format stream "#.~S" `(make-instance
'preprocessed-propspec