Add OptionConverters.toJava and OptionConverters.toScala
This commit is contained in:
parent
ccd728f098
commit
0df71060ea
3 changed files with 12 additions and 0 deletions
|
|
@ -50,4 +50,7 @@ object Scala212CompatTest {
|
||||||
val javaOptionalLong: java.util.OptionalLong = java.util.OptionalLong.of(1L)
|
val javaOptionalLong: java.util.OptionalLong = java.util.OptionalLong.of(1L)
|
||||||
val optionalLongToScala: Option[Long] = javaOptionalLong.toScala
|
val optionalLongToScala: Option[Long] = javaOptionalLong.toScala
|
||||||
val optionalLongToJavaGeneric: Optional[Long] = javaOptionalLong.toJavaGeneric
|
val optionalLongToJavaGeneric: Optional[Long] = javaOptionalLong.toJavaGeneric
|
||||||
|
|
||||||
|
// OptionConverters toScala and toJava
|
||||||
|
OptionConverters.toJava(OptionConverters.toScala(java.util.Optional.of("")))
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,10 @@ import java.util._
|
||||||
private[pekko] object OptionConverters {
|
private[pekko] object OptionConverters {
|
||||||
import scala.compat.java8.OptionConverters.SpecializerOfOptions
|
import scala.compat.java8.OptionConverters.SpecializerOfOptions
|
||||||
|
|
||||||
|
@inline final def toScala[A](o: Optional[A]): Option[A] = scala.compat.java8.OptionConverters.toScala(o)
|
||||||
|
|
||||||
|
@inline final def toJava[A](o: Option[A]): Optional[A] = scala.compat.java8.OptionConverters.toJava(o)
|
||||||
|
|
||||||
implicit final class RichOptional[A](private val o: java.util.Optional[A]) extends AnyVal {
|
implicit final class RichOptional[A](private val o: java.util.Optional[A]) extends AnyVal {
|
||||||
@inline def toScala: Option[A] = scala.compat.java8.OptionConverters.RichOptionalGeneric(o).asScala
|
@inline def toScala: Option[A] = scala.compat.java8.OptionConverters.RichOptionalGeneric(o).asScala
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,11 @@ import scala.jdk.OptionShape
|
||||||
*/
|
*/
|
||||||
@InternalStableApi
|
@InternalStableApi
|
||||||
private[pekko] object OptionConverters {
|
private[pekko] object OptionConverters {
|
||||||
|
|
||||||
|
@inline final def toScala[A](o: Optional[A]): Option[A] = scala.jdk.javaapi.OptionConverters.toScala(o)
|
||||||
|
|
||||||
|
@inline final def toJava[A](o: Option[A]): Optional[A] = scala.jdk.javaapi.OptionConverters.toJava(o)
|
||||||
|
|
||||||
implicit final class RichOptional[A](private val o: java.util.Optional[A]) extends AnyVal {
|
implicit final class RichOptional[A](private val o: java.util.Optional[A]) extends AnyVal {
|
||||||
@inline def toScala: Option[A] = scala.jdk.OptionConverters.RichOptional(o).toScala
|
@inline def toScala: Option[A] = scala.jdk.OptionConverters.RichOptional(o).toScala
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue