对于具有外部参数名称的方法调用,我可以cmd在任何参数名称上单击Xcode以跳转到方法定义.例如,在
let a = Array(count: 3, repeatedValue: 0)
Run Code Online (Sandbox Code Playgroud)
一个cmd上的"计数"或"repeatedValue" -click直接跳转到Array初始化方法
init(count: Int, repeatedValue: Element)
Run Code Online (Sandbox Code Playgroud)
但是,我还没有找到一种方法来为没有外部参数名称的方法调用做同样的事情 ,如
let c = Array("abc".characters)
Run Code Online (Sandbox Code Playgroud)
当然我可以查找该characters方法返回一个String.CharacterView依次符合的方法SequenceType,因此这将调用Array初始化程序
init<S : SequenceType where S.Generator.Element == _Buffer.Element>(_ s: S)
Run Code Online (Sandbox Code Playgroud)
但我想知道是否有人 为这种情况找到了直接的"跳转到定义"方法.
如果类型具有许多重载的init方法(没有外部参数名称),那么这将非常有用,以确定实际调用哪一个.
以上示例来自Swift 2/Xcode 7 beta,但问题与特殊的Swift/Xcode版本无关.
(也发布在Apple开发者论坛:https://forums.developer.apple.com/thread/12687.)
你必须做一些工作:
let c = Array.init("abc".characters)
// ^^^^^
Run Code Online (Sandbox Code Playgroud)
使用初始化表达式,然后cmd单击它.
| 归档时间: |
|
| 查看次数: |
523 次 |
| 最近记录: |