在 Node.js 中,我可以使用 foo
中的对象数组
Object.keys(require("foo"));
有什么方法可以在 Rust 中做同样的事情吗?
mod foo;
getobjs(foo);
最佳答案
不,没有办法做到这一点。这种对编译时信息的内省(introspection)在运行时根本不存在。 模块 的概念甚至不存在。
如果您对编译时信息感兴趣,您可以通过构建和查看文档 (cargo doc --open
) 来查看整个 crate 的所有公共(public)项目。您也可以在使用之前在线查看 crate 的文档。
还有像 Rust Language Server 这样的工具为编辑器和 IDE 提供此类(以及更多)信息。
关于module - 如何从 Rust 模块中获取公共(public)元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45873160/