ChainingOps
Adds chaining methods tap
and pipe
to every type.
Adds chaining methods tap
and pipe
to every type.
class AnyVal
trait Matchable
class Any
Value members
Concrete methods
Converts the value by applying the function f
.
Converts the value by applying the function f
.
scala> import scala.util.chaining._
scala> val times6 = (_: Int) * 6
times6: Int => Int = $$Lambda$2023/975629453@17143b3b
scala> val i = (1 - 2 - 3).pipe(times6).pipe(scala.math.abs)
i: Int = 24
Note: (1 - 2 - 3).pipe(times6)
may have a small amount of overhead at
runtime compared to the equivalent { val temp = 1 - 2 - 3; times6(temp) }
.
- Type Params
- B
the result type of the function
f
.
- Value Params
- f
the function to apply to the value.
- Returns
a new value resulting from applying the given function
f
to this value.
Applies f
to the value for its side effects, and returns the original value.
Applies f
to the value for its side effects, and returns the original value.
scala> import scala.util.chaining._
scala> val xs = List(1, 2, 3).tap(ys => println("debug " + ys.toString))
debug List(1, 2, 3)
xs: List[Int] = List(1, 2, 3)
- Type Params
- U
the result type of the function
f
.
- Value Params
- f
the function to apply to the value.
- Returns
the original value
self
.