在Swift 3 中如何记录函数的闭包参数?
How do you document the parameters of a function's closure parameter in Swift 3?
在Xcode 8 beta和Swift 3中,当你有一个方法将闭包作为参数时,例如:
func foo(bar: (String) -> Void) {
bar("Hello, world")
}
您如何记录闭包采用的参数?例如,如果我这样写:
/// Calls bar with "Hello, world"
/// - parameter bar: A closure to call
func foo(bar: (String) -> Void) {
bar("Hello, world")
}
那么快速帮助是这样的:
我想知道允许我写一些文本来替换的语法是什么"No description."非常感谢!
据我所知,如果你标记它们,你只能记录闭包参数:
/// Calls bar with "Hello, world"
/// - parameter bar: A closure to call
/// - parameter theString: A string to use
func foo(bar: (theString: String) -> Void) {
bar(theString: "Hello, world")
}
这不太理想:它强制您在调用闭包时使用参数标签,如果存在命名冲突,似乎无法区分两者。
编辑:正如@Arnaud 指出的那样,您可以使用_
来避免在调用闭包时必须使用参数标签:
/// Calls bar with "Hello, world"
/// - parameter bar: A closure to call
/// - parameter theString: A string to use
func foo(bar: (_ theString: String) -> Void) {
bar("Hello, world")
}
事实上,这是 Swift 3 中唯一有效的方法,因为参数标签不再是类型系统的一部分(参见 SE-0111)。
这个好像坏了好久了。这是 XCode 11.6 的示例,您可以在其中看到:
1 ) 参数记录在@Tim Vermeulen 回答中
2 ) 然而,“无描述” table 出现在帮助 pop-over window
3 ) 但是 文本在快速帮助中正确显示 window
我想我们需要等待(希望)Apple 解决这个问题。
虽然略有改善。不要在每一行都写“参数”,而是使用以下语法:
- Parameters:
- name1: description
- name2: description
(缩进似乎很重要)
然后你会得到
但并不是所有调用该函数的地方都有效...
在Xcode 8 beta和Swift 3中,当你有一个方法将闭包作为参数时,例如:
func foo(bar: (String) -> Void) {
bar("Hello, world")
}
您如何记录闭包采用的参数?例如,如果我这样写:
/// Calls bar with "Hello, world"
/// - parameter bar: A closure to call
func foo(bar: (String) -> Void) {
bar("Hello, world")
}
那么快速帮助是这样的:
我想知道允许我写一些文本来替换的语法是什么"No description."非常感谢!
据我所知,如果你标记它们,你只能记录闭包参数:
/// Calls bar with "Hello, world"
/// - parameter bar: A closure to call
/// - parameter theString: A string to use
func foo(bar: (theString: String) -> Void) {
bar(theString: "Hello, world")
}
这不太理想:它强制您在调用闭包时使用参数标签,如果存在命名冲突,似乎无法区分两者。
编辑:正如@Arnaud 指出的那样,您可以使用_
来避免在调用闭包时必须使用参数标签:
/// Calls bar with "Hello, world"
/// - parameter bar: A closure to call
/// - parameter theString: A string to use
func foo(bar: (_ theString: String) -> Void) {
bar("Hello, world")
}
事实上,这是 Swift 3 中唯一有效的方法,因为参数标签不再是类型系统的一部分(参见 SE-0111)。
这个好像坏了好久了。这是 XCode 11.6 的示例,您可以在其中看到:
1 ) 参数记录在@Tim Vermeulen 回答中
2 ) 然而,“无描述” table 出现在帮助 pop-over window
3 ) 但是 文本在快速帮助中正确显示 window
我想我们需要等待(希望)Apple 解决这个问题。
虽然略有改善。不要在每一行都写“参数”,而是使用以下语法:
- Parameters:
- name1: description
- name2: description
(缩进似乎很重要)
然后你会得到
但并不是所有调用该函数的地方都有效...