Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 从右向左的类型推断_Scala - Fatal编程技术网

Scala 从右向左的类型推断

Scala 从右向左的类型推断,scala,Scala,我创建了以下代码段: class PimpToRight[A](f: A => Boolean) { def <| (a: A) = f(a) } implicit def f2pimp[A](f: A => Boolean) = new PimpToRight(f) class PimpToLeft[A](a: A) { def <|: (f: A => Boolean) = f(a) def |> (f: A => Boolean) =

我创建了以下代码段:

class PimpToRight[A](f: A => Boolean) {
  def <| (a: A) = f(a)
}
implicit def f2pimp[A](f: A => Boolean) = new PimpToRight(f)

class PimpToLeft[A](a: A) {
  def <|: (f: A => Boolean) = f(a)
  def |> (f: A => Boolean) = f(a)
}
implicit def a2pimp[A](a: A) = new PimpToLeft(a)
class-PimpToRight[A](f:A=>Boolean){
def Boolean)=新的PimpToRight(f)
左[A]类(A:A){
定义布尔)=f(a)
定义|>(f:A=>布尔)=f(A)
}
隐式def a2pimp[A](A:A)=新PimpToLeft(A)
有右关联方法和左关联方法可用

以下代码工作:

((_: Int) > 3) <| 7
((_: Int) > 3) <|: 7
7 |> (_ > 3)
(((:Int)>3)3)((Int>3)
但这并不是:

(_ > 3) <| 7
(_ > 3) <|: 7

(\u>3)3)这两个问题是相关的:并且。基于这些问题,您的问题的答案似乎是否定的。虽然与您的问题没有直接关系,但Paul Chiusano在上发表了一篇非常好的文章,阐述了Scala中类型推断的当前状态,并提供了一些有用的建议。

我很惊讶我们之间存在差异恩,
(>3)@Kipton注意,如果将
7
放在括号中,则可以省略回勾:
(7.3)
,因为编译器试图调用