【发布时间】:2015-08-17 11:14:41
【问题描述】:
对于带有外部参数名称的方法调用我可以cmd-在Xcode 中单击任何参数名称以跳转到方法定义。为了 例如,在
let a = Array(count: 3, repeatedValue: 0)
一个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。)
【问题讨论】:
-
不能点击“阵列”吗?我从来没有想过点击参数名称,总是点击括号外的部分。 (我想在这种情况下,它只是进入类声明而不是特定的初始化程序。)
-
@nhgrif: 没错,cmd-click on "Array" 会跳转到
public struct Array<Element> : ...,这不是我要找的。span>