没有外部参数名称的方法的“跳转到定义”

时间:2015-08-17 11:14:41

标签: xcode swift

对于带有外部参数名称​​的方法调用,我可以 cmd - 在任何参数名称的Xcode中单击以跳转到方法定义。对于 例如,

let a = Array(count: 3, repeatedValue: 0)  

a cmd - 点击“count”或“repeatedValue”直接跳转到Array初始化方法

init(count: Int, repeatedValue: Element)  

但是,我还没有找到一种方法来为方法调用做同样的事情 没有外部参数名称,如

let c = Array("abc".characters)

当然,我可以查找characters方法返回String.CharacterView,后者又符合SequenceType,因此会调用Array初始值设定项

init<S : SequenceType where S.Generator.Element == _Buffer.Element>(_ s: S)  

但我想知道是否有人找到直接“跳转到定义”方法 对于这种情况。

如果类型有许多重载的init方法(没有外部参数名称),那么这将非常有用,以确定实际调用哪一个。

以上示例来自Swift 2 / Xcode 7 beta,但问题并非如此 与特殊的Swift / Xcode版本相关联。

(也发布在Apple开发者论坛:https://forums.developer.apple.com/thread/12687。)

1 个答案:

答案 0 :(得分:5)

你必须做一些工作:

let c = Array.init("abc".characters)
//           ^^^^^

使用initializer expression,然后 cmd +点击它。