Generalize the object to plist function

This commit is contained in:
Marcus Kammer 2025-02-21 08:18:34 +01:00
parent 5ddc87022c
commit 419dda05f6
Signed by: marcuskammer
GPG key ID: C374817BE285268F
2 changed files with 4 additions and 7 deletions

View file

@ -2,7 +2,7 @@
(defsystem "dev.metalisp.survey"
:description "Create questionnaires and analyze the results."
:version "0.5.33"
:version "0.5.34"
:author "Marcus Kammer <marcus.kammer@mailbox.org>"
:source-control (:git "https://code.metalisp.dev/marcuskammer/dev.metalisp.survey.git")
:licence "MIT"
@ -14,6 +14,7 @@
(:module "models/"
:serial t
:components ((:file "package")
(:file "helpers")
(:file "survey")
(:file "questionnaire")))
(:module "views/"

View file

@ -46,12 +46,8 @@
Accepts all valid initargs for questionnaire class."
(apply #'make-instance 'questionnaire initargs))
(defmethod questionnaire-to-list ((q questionnaire))
(loop for slot in (closer-mop:class-slots (class-of q))
for slot-name = (closer-mop:slot-definition-name slot)
when (slot-boundp q slot-name)
nconc (list (intern (symbol-name slot-name) :keyword)
(slot-value q slot-name))))
(defmethod questionnaire-to-plist ((q questionnaire))
(object-to-plist q))
(defmethod questionnaire-write-file ((q questionnaire))
(ml-survey/fileops:write-to-file (questionnaire-data-file q)