Function2

scala.Function2
trait Function2[-T1, -T2, +R] extends AnyRef

A function of 2 parameters.

In the following example, the definition of max is shorthand, conceptually, for the anonymous class definition anonfun2, although the implementation details of how the function value is constructed may differ:

object Main extends App {
  val max = (x: Int, y: Int) => if (x < y) y else x

  val anonfun2 = new Function2[Int, Int, Int] {
    def apply(x: Int, y: Int): Int = if (x < y) y else x
  }
  assert(max(0, 1) == anonfun2(0, 1))
}

Attributes

Source
Function2.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class FromJavaBiConsumer[T, U]
class FromJavaBiFunction[T, U, R]
class FromJavaBiPredicate[T, U]
class AbstractFunction2[T1, T2, R]
Show all
Self type
(T1, T2) => R

Members list

Value members

Abstract methods

def apply(v1: T1, v2: T2): R

Apply the body of this function to the arguments.

Apply the body of this function to the arguments.

Attributes

Returns

the result of function application.

Source
Function2.scala

Concrete methods

def curried: T1 => T2 => R

Creates a curried version of this function.

Creates a curried version of this function.

Attributes

Returns

a function f such that f(x1)(x2) == apply(x1, x2)

Source
Function2.scala
override def toString(): String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns

a string representation of the object.

Definition Classes
Any
Source
Function2.scala
def tupled: ((T1, T2)) => R

Creates a tupled version of this function: instead of 2 arguments, it accepts a single scala.Tuple2 argument.

Creates a tupled version of this function: instead of 2 arguments, it accepts a single scala.Tuple2 argument.

Attributes

Returns

a function f such that f((x1, x2)) == f(Tuple2(x1, x2)) == apply(x1, x2)

Source
Function2.scala