将任何 Common Lisp 结构对象保存到文件(可读)似乎相对简单,例如
(defun save-structure-object (object filename)
(with-open-file (stream filename :direction :output
:if-exists :supersede)
(with-standard-io-syntax (print object stream))))
然而,对于 CLOS 对象实例,该帖子位于使 clos 对象可在 lisp 中打印表示更复杂的配方。
首先,关于 close-mop 的评论是否与保存 clos 类实例的更简单方法有关?
其次,那里提供的代码是否作为打印任何 clos 实例的通用实用程序提供?
更接近MOP允许人们避免在您引用的帖子中出现危险的阅读时条件混乱。一般来说,使用许多人使用的 OOTB 解决方案比随机的临时黑客(您自己的或其他人的)更安全。
Before closer-mop
就在附近,我自己写的CLOS/MOP兼容层 and CLOS 对象 I/O。我建议您使用它而不是您引用的 SO 答案中的代码。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)