Packages

o

scala.jdk

FunctionConverters

object FunctionConverters extends Priority0FunctionExtensions

This object provides extension methods that convert between Scala and Java function types.

When writing Java code, use the explicit conversion methods defined in javaapi.FunctionConverters instead.

Using the .asJava extension method on a Scala function produces the most specific possible Java function type:

scala> import scala.jdk.FunctionConverters._
scala> val f = (x: Int) => x + 1

scala> val jf1 = f.asJava
jf1: java.util.function.IntUnaryOperator = ...

More generic Java function types can be created using the corresponding asJavaXYZ extension method:

scala> val jf2 = f.asJavaFunction
jf2: java.util.function.Function[Int,Int] = ...

scala> val jf3 = f.asJavaUnaryOperator
jf3: java.util.function.UnaryOperator[Int] = ...

Converting a Java function to Scala is done using the asScala extension method:

scala> List(1,2,3).map(jf2.asScala)
res1: List[Int] = List(2, 3, 4)
Source
FunctionConverters.scala
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. FunctionConverters
  2. Priority0FunctionExtensions
  3. Priority1FunctionExtensions
  4. Priority2FunctionExtensions
  5. Priority3FunctionExtensions
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. implicit def enrichAsJavaBiConsumer[T, U](sf: (T, U) => Unit): RichFunction2AsBiConsumer[T, U]
    Definition Classes
    Priority2FunctionExtensions
    Annotations
    @inline()
  2. implicit def enrichAsJavaBiFunction[T, U, R](sf: (T, U) => R): RichFunction2AsBiFunction[T, U, R]
    Definition Classes
    Priority3FunctionExtensions
    Annotations
    @inline()
  3. implicit def enrichAsJavaBiPredicate[T, U](sf: (T, U) => Boolean): RichFunction2AsBiPredicate[T, U]
    Definition Classes
    Priority2FunctionExtensions
    Annotations
    @inline()
  4. implicit def enrichAsJavaBinaryOperator[T, A1, A2](sf: (T, A1) => A2)(implicit evA1: =:=[A1, T], evA2: =:=[A2, T]): RichFunction2AsBinaryOperator[T]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  5. implicit def enrichAsJavaBooleanSupplier(sf: () => Boolean): RichFunction0AsBooleanSupplier
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  6. implicit def enrichAsJavaConsumer[T](sf: (T) => Unit): RichFunction1AsConsumer[T]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  7. implicit def enrichAsJavaDoubleBinaryOperator[A0, A1](sf: (A0, A1) => Double)(implicit evA0: =:=[A0, Double], evA1: =:=[A1, Double]): RichFunction2AsDoubleBinaryOperator
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  8. implicit def enrichAsJavaDoubleConsumer[A0](sf: (A0) => Unit)(implicit evA0: =:=[A0, Double]): RichFunction1AsDoubleConsumer
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  9. implicit def enrichAsJavaDoubleFunction[A0, R](sf: (A0) => R)(implicit evA0: =:=[A0, Double]): RichFunction1AsDoubleFunction[R]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  10. implicit def enrichAsJavaDoublePredicate[A0](sf: (A0) => Boolean)(implicit evA0: =:=[A0, Double]): RichFunction1AsDoublePredicate
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  11. implicit def enrichAsJavaDoubleSupplier(sf: () => Double): RichFunction0AsDoubleSupplier
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  12. implicit def enrichAsJavaDoubleToIntFunction[A0](sf: (A0) => Int)(implicit evA0: =:=[A0, Double]): RichFunction1AsDoubleToIntFunction
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  13. implicit def enrichAsJavaDoubleToLongFunction[A0](sf: (A0) => Long)(implicit evA0: =:=[A0, Double]): RichFunction1AsDoubleToLongFunction
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  14. implicit def enrichAsJavaDoubleUnaryOperator[A0](sf: (A0) => Double)(implicit evA0: =:=[A0, Double]): RichFunction1AsDoubleUnaryOperator
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  15. implicit def enrichAsJavaFunction[T, R](sf: (T) => R): RichFunction1AsFunction[T, R]
    Definition Classes
    Priority2FunctionExtensions
    Annotations
    @inline()
  16. implicit def enrichAsJavaIntBinaryOperator[A0, A1](sf: (A0, A1) => Int)(implicit evA0: =:=[A0, Int], evA1: =:=[A1, Int]): RichFunction2AsIntBinaryOperator
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  17. implicit def enrichAsJavaIntConsumer[A0](sf: (A0) => Unit)(implicit evA0: =:=[A0, Int]): RichFunction1AsIntConsumer
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  18. implicit def enrichAsJavaIntFunction[A0, R](sf: (A0) => R)(implicit evA0: =:=[A0, Int]): RichFunction1AsIntFunction[R]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  19. implicit def enrichAsJavaIntPredicate[A0](sf: (A0) => Boolean)(implicit evA0: =:=[A0, Int]): RichFunction1AsIntPredicate
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  20. implicit def enrichAsJavaIntSupplier(sf: () => Int): RichFunction0AsIntSupplier
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  21. implicit def enrichAsJavaIntToDoubleFunction[A0](sf: (A0) => Double)(implicit evA0: =:=[A0, Int]): RichFunction1AsIntToDoubleFunction
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  22. implicit def enrichAsJavaIntToLongFunction[A0](sf: (A0) => Long)(implicit evA0: =:=[A0, Int]): RichFunction1AsIntToLongFunction
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  23. implicit def enrichAsJavaIntUnaryOperator[A0](sf: (A0) => Int)(implicit evA0: =:=[A0, Int]): RichFunction1AsIntUnaryOperator
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  24. implicit def enrichAsJavaLongBinaryOperator[A0, A1](sf: (A0, A1) => Long)(implicit evA0: =:=[A0, Long], evA1: =:=[A1, Long]): RichFunction2AsLongBinaryOperator
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  25. implicit def enrichAsJavaLongConsumer[A0](sf: (A0) => Unit)(implicit evA0: =:=[A0, Long]): RichFunction1AsLongConsumer
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  26. implicit def enrichAsJavaLongFunction[A0, R](sf: (A0) => R)(implicit evA0: =:=[A0, Long]): RichFunction1AsLongFunction[R]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  27. implicit def enrichAsJavaLongPredicate[A0](sf: (A0) => Boolean)(implicit evA0: =:=[A0, Long]): RichFunction1AsLongPredicate
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  28. implicit def enrichAsJavaLongSupplier(sf: () => Long): RichFunction0AsLongSupplier
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  29. implicit def enrichAsJavaLongToDoubleFunction[A0](sf: (A0) => Double)(implicit evA0: =:=[A0, Long]): RichFunction1AsLongToDoubleFunction
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  30. implicit def enrichAsJavaLongToIntFunction[A0](sf: (A0) => Int)(implicit evA0: =:=[A0, Long]): RichFunction1AsLongToIntFunction
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  31. implicit def enrichAsJavaLongUnaryOperator[A0](sf: (A0) => Long)(implicit evA0: =:=[A0, Long]): RichFunction1AsLongUnaryOperator
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  32. implicit def enrichAsJavaObjDoubleConsumer[T, A1](sf: (T, A1) => Unit)(implicit evA1: =:=[A1, Double]): RichFunction2AsObjDoubleConsumer[T]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  33. implicit def enrichAsJavaObjIntConsumer[T, A1](sf: (T, A1) => Unit)(implicit evA1: =:=[A1, Int]): RichFunction2AsObjIntConsumer[T]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  34. implicit def enrichAsJavaObjLongConsumer[T, A1](sf: (T, A1) => Unit)(implicit evA1: =:=[A1, Long]): RichFunction2AsObjLongConsumer[T]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  35. implicit def enrichAsJavaPredicate[T](sf: (T) => Boolean): RichFunction1AsPredicate[T]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  36. implicit def enrichAsJavaSupplier[T](sf: () => T): RichFunction0AsSupplier[T]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  37. implicit def enrichAsJavaToDoubleBiFunction[T, U](sf: (T, U) => Double): RichFunction2AsToDoubleBiFunction[T, U]
    Definition Classes
    Priority2FunctionExtensions
    Annotations
    @inline()
  38. implicit def enrichAsJavaToDoubleFunction[T](sf: (T) => Double): RichFunction1AsToDoubleFunction[T]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  39. implicit def enrichAsJavaToIntBiFunction[T, U](sf: (T, U) => Int): RichFunction2AsToIntBiFunction[T, U]
    Definition Classes
    Priority2FunctionExtensions
    Annotations
    @inline()
  40. implicit def enrichAsJavaToIntFunction[T](sf: (T) => Int): RichFunction1AsToIntFunction[T]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  41. implicit def enrichAsJavaToLongBiFunction[T, U](sf: (T, U) => Long): RichFunction2AsToLongBiFunction[T, U]
    Definition Classes
    Priority2FunctionExtensions
    Annotations
    @inline()
  42. implicit def enrichAsJavaToLongFunction[T](sf: (T) => Long): RichFunction1AsToLongFunction[T]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  43. implicit def enrichAsJavaUnaryOperator[T, A1](sf: (T) => A1)(implicit evA1: =:=[A1, T]): RichFunction1AsUnaryOperator[T]
    Definition Classes
    Priority1FunctionExtensions
    Annotations
    @inline()
  44. implicit def enrichAsScalaFromBiConsumer[T, U](jf: BiConsumer[T, U]): RichBiConsumerAsFunction2[T, U]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  45. implicit def enrichAsScalaFromBiFunction[T, U, R](jf: BiFunction[T, U, R]): RichBiFunctionAsFunction2[T, U, R]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  46. implicit def enrichAsScalaFromBiPredicate[T, U](jf: BiPredicate[T, U]): RichBiPredicateAsFunction2[T, U]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  47. implicit def enrichAsScalaFromBinaryOperator[T](jf: BinaryOperator[T]): RichBinaryOperatorAsFunction2[T]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  48. implicit def enrichAsScalaFromBooleanSupplier(jf: BooleanSupplier): RichBooleanSupplierAsFunction0
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  49. implicit def enrichAsScalaFromConsumer[T](jf: Consumer[T]): RichConsumerAsFunction1[T]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  50. implicit def enrichAsScalaFromDoubleBinaryOperator(jf: DoubleBinaryOperator): RichDoubleBinaryOperatorAsFunction2
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  51. implicit def enrichAsScalaFromDoubleConsumer(jf: DoubleConsumer): RichDoubleConsumerAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  52. implicit def enrichAsScalaFromDoubleFunction[R](jf: DoubleFunction[R]): RichDoubleFunctionAsFunction1[R]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  53. implicit def enrichAsScalaFromDoublePredicate(jf: DoublePredicate): RichDoublePredicateAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  54. implicit def enrichAsScalaFromDoubleSupplier(jf: DoubleSupplier): RichDoubleSupplierAsFunction0
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  55. implicit def enrichAsScalaFromDoubleToIntFunction(jf: DoubleToIntFunction): RichDoubleToIntFunctionAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  56. implicit def enrichAsScalaFromDoubleToLongFunction(jf: DoubleToLongFunction): RichDoubleToLongFunctionAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  57. implicit def enrichAsScalaFromDoubleUnaryOperator(jf: DoubleUnaryOperator): RichDoubleUnaryOperatorAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  58. implicit def enrichAsScalaFromFunction[T, R](jf: java.util.function.Function[T, R]): RichFunctionAsFunction1[T, R]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  59. implicit def enrichAsScalaFromIntBinaryOperator(jf: IntBinaryOperator): RichIntBinaryOperatorAsFunction2
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  60. implicit def enrichAsScalaFromIntConsumer(jf: IntConsumer): RichIntConsumerAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  61. implicit def enrichAsScalaFromIntFunction[R](jf: IntFunction[R]): RichIntFunctionAsFunction1[R]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  62. implicit def enrichAsScalaFromIntPredicate(jf: IntPredicate): RichIntPredicateAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  63. implicit def enrichAsScalaFromIntSupplier(jf: IntSupplier): RichIntSupplierAsFunction0
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  64. implicit def enrichAsScalaFromIntToDoubleFunction(jf: IntToDoubleFunction): RichIntToDoubleFunctionAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  65. implicit def enrichAsScalaFromIntToLongFunction(jf: IntToLongFunction): RichIntToLongFunctionAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  66. implicit def enrichAsScalaFromIntUnaryOperator(jf: IntUnaryOperator): RichIntUnaryOperatorAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  67. implicit def enrichAsScalaFromLongBinaryOperator(jf: LongBinaryOperator): RichLongBinaryOperatorAsFunction2
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  68. implicit def enrichAsScalaFromLongConsumer(jf: LongConsumer): RichLongConsumerAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  69. implicit def enrichAsScalaFromLongFunction[R](jf: LongFunction[R]): RichLongFunctionAsFunction1[R]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  70. implicit def enrichAsScalaFromLongPredicate(jf: LongPredicate): RichLongPredicateAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  71. implicit def enrichAsScalaFromLongSupplier(jf: LongSupplier): RichLongSupplierAsFunction0
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  72. implicit def enrichAsScalaFromLongToDoubleFunction(jf: LongToDoubleFunction): RichLongToDoubleFunctionAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  73. implicit def enrichAsScalaFromLongToIntFunction(jf: LongToIntFunction): RichLongToIntFunctionAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  74. implicit def enrichAsScalaFromLongUnaryOperator(jf: LongUnaryOperator): RichLongUnaryOperatorAsFunction1
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  75. implicit def enrichAsScalaFromObjDoubleConsumer[T](jf: ObjDoubleConsumer[T]): RichObjDoubleConsumerAsFunction2[T]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  76. implicit def enrichAsScalaFromObjIntConsumer[T](jf: ObjIntConsumer[T]): RichObjIntConsumerAsFunction2[T]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  77. implicit def enrichAsScalaFromObjLongConsumer[T](jf: ObjLongConsumer[T]): RichObjLongConsumerAsFunction2[T]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  78. implicit def enrichAsScalaFromPredicate[T](jf: Predicate[T]): RichPredicateAsFunction1[T]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  79. implicit def enrichAsScalaFromSupplier[T](jf: Supplier[T]): RichSupplierAsFunction0[T]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  80. implicit def enrichAsScalaFromToDoubleBiFunction[T, U](jf: ToDoubleBiFunction[T, U]): RichToDoubleBiFunctionAsFunction2[T, U]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  81. implicit def enrichAsScalaFromToDoubleFunction[T](jf: ToDoubleFunction[T]): RichToDoubleFunctionAsFunction1[T]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  82. implicit def enrichAsScalaFromToIntBiFunction[T, U](jf: ToIntBiFunction[T, U]): RichToIntBiFunctionAsFunction2[T, U]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  83. implicit def enrichAsScalaFromToIntFunction[T](jf: ToIntFunction[T]): RichToIntFunctionAsFunction1[T]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  84. implicit def enrichAsScalaFromToLongBiFunction[T, U](jf: ToLongBiFunction[T, U]): RichToLongBiFunctionAsFunction2[T, U]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  85. implicit def enrichAsScalaFromToLongFunction[T](jf: ToLongFunction[T]): RichToLongFunctionAsFunction1[T]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()
  86. implicit def enrichAsScalaFromUnaryOperator[T](jf: UnaryOperator[T]): RichUnaryOperatorAsFunction1[T]
    Definition Classes
    Priority0FunctionExtensions
    Annotations
    @inline()