【发布时间】:2016-11-16 16:11:08
【问题描述】:
我正在将不属于我的代码转换为 swift 3.0,并且有一些我不理解的行被编译器标记:
public func setupAppearance()
{
if let delegate = delegate
{
firstWeekday~>delegate.firstWeekday?()
dayOfWeekTextColor~>delegate.dayOfWeekTextColor?()
dayOfWeekTextUppercase~>delegate.dayOfWeekTextUppercase?()
dayOfWeekFont~>delegate.dayOfWeekFont?()
weekdaySymbolType~>delegate.weekdaySymbolType?()
}
}
注意这不是 ->(破折号,大于)而是 ~>(波浪号,大于)
我确实发现了这个问题: What is the ~> (tilde greater than) operator used for in Swift? 但没觉得很有帮助。
有人可以指点我有关如何阅读此内容的文档吗?不幸的是 google、stackoverflow 和 github 都无法搜索到~>。
谢谢
格雷格
【问题讨论】:
-
有人创建了一个自定义操作符(或者更好的说法:他们劫持了一个现有的操作符来表示别的东西,这更糟)。命令单击它,看看它带你去哪里。 (我不鼓励使用自定义运算符的一个原因......)
-
@RobNapier
~>不是“现有运营商”,那您是什么意思? -
确实如此。它只是没有任何公共实现。它被定义为 Swift 标头中的运算符。如果我没记错的话,它可能会被用作 switch case 的实现细节。
-
@TimVermeulen http://swiftdoc.org/v3.0/operator/tildegt/.
标签: swift operators swift3 tilde