从Swift的第一个测试版开始,我们已经能够通过交互过程看到模块的Swift接口.首先在Xcode项目中使用Swift文件,右键单击符号,然后选择"跳转到定义"; Xcode将生成带声明的文件.
这个程序有点乏味.这是非常手动的; 你必须从Xcode项目中的Swift文件开始; 你必须提前知道符号的名称.它不会生成模块中的所有声明 - 如果模块是在Objective-C中定义的,它只显示来自单个.h文件的声明.
我通过http://www.jpsim.com/uncovering-sourcekit/了解了Beta 3中的命令行工具swift-ide-test .通过使用如下命令,我可以生成整个框架的声明:
xcrun swift-ide-test -print-module -source-filename /dev/null \
-sdk /Applications/Xcode6-Beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk \
-print-regular-comments -module-print-submodules -module-to-print CoreGraphics
Run Code Online (Sandbox Code Playgroud)
但是,在Beta 4中,swift-ide-test命令已经消失.
有谁知道通过命令行自动生成Swift声明的新方法?
我根据 Erica Sadun 的博客文章 ( http://ericasadun.com/2014/07/28/swift-docs- Generation/) 找到了一种技术。
Swift REPL 有一个:print_module命令可以转储模块中的所有声明。与在 Xcode 中选择模块不同,它不仅仅停留在一个(虚拟)标头。
所以这个命令会打印出CoreGraphics中的所有声明:
echo ":print_module CoreGraphics" | xcrun swift -deprecated-integrated-repl
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1301 次 |
| 最近记录: |