如何查找加载的 ASDF 系统的符号和源文件

问题描述

我有一些 ASDF3 系统,它们共享一个通用包。

我想知道如何找到仅由其中一个定义的所有符号。有没有办法收集这些?能够确定定义给定符号的源文件的路径名也会很有帮助。

我很欣赏最佳实践会规定每个系统使用单独的软件包,但我现在有一些理由不这样做。 (如果绝对必要,我可以重新考虑这一点。)

解决方法

没有。 ASDF 不知道它加载的系统和文件的内容。

系统是文件的集合加上一些描述其依赖关系拓扑的元数据(等等)。没有规定文件甚至必须是 Lisp 文件。

你可以尝试询问你的 Lisp 实现是从哪个文件加载的。 G。一个函数定义,然后从文件名和位置推断它可能所属的系统(假设您的系统不使用相同的文件)。