我正在阅读this文章,我遇到了以下两个功能:
// Sequence actions, discarding the value of the second argument
func <* <A, B>(p: Parser<A>, q: Parser<B>) -> Parser<A> {
return const <^> p <*> q
}
// Sequence actions, discarding the value of the first argument
func *> <A, B>(p: Parser<A>, q: Parser<B>) -> Parser<B> {
return const(id) <^> p <*> q
}
const
和const(id)
是什么?我猜他们是某种价值观,但有什么价值?它们是隐含的左侧或右侧操作数吗? (这只是在黑暗中拍摄)。我找不到任何关于它的信息。
答案 0 :(得分:1)
Swift没有const
个关键字。
该演讲使用了the TryParsec library,其中定义了this const
function:
/// Constant function.
internal func const<A, B>(_ a: A) -> (B) -> A
{
return { _ in a }
}