final class ChainingOps[A] extends AnyVal
Adds chaining methods tap
and pipe
to every type.
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- ChainingOps
- AnyVal
- Any
- Hide All
- Show All
Visibility
- Public
- All
Instance Constructors
- new ChainingOps(self: A)
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- Any
-
final
def
##(): Int
- Definition Classes
- Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
getClass(): Class[_ <: AnyVal]
- Definition Classes
- AnyVal → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
pipe[B](f: (A) ⇒ B): B
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) }
.- B
the result type of the function
f
.- f
the function to apply to the value.
- returns
a new value resulting from applying the given function
f
to this value.
-
def
tap[U](f: (A) ⇒ U): A
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)
- U
the result type of the function
f
.- f
the function to apply to the value.
- returns
the original value
self
.
-
def
toString(): String
- Definition Classes
- Any