Packages

  • package root

    This is the documentation for the Scala standard library.

    This is the documentation for the Scala standard library.

    Package structure

    The scala package contains core types like Int, Float, Array or Option which are accessible in all Scala compilation units without explicit qualification or imports.

    Notable packages include:

    Other packages exist. See the complete list on the right.

    Additional parts of the standard library are shipped as separate libraries. These include:

    Automatic imports

    Identifiers in the scala package and the scala.Predef object are always in scope by default.

    Some of these identifiers are type aliases provided as shortcuts to commonly used classes. For example, List is an alias for scala.collection.immutable.List.

    Other aliases refer to classes provided by the underlying platform. For example, on the JVM, String is an alias for java.lang.String.

    Definition Classes
    root
  • package scala

    Core Scala types.

    Core Scala types. They are always available without an explicit import.

    Definition Classes
    root
  • package jdk
    Definition Classes
    scala
  • object OptionConverters

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

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

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

    Scala Option is extended with a toJava method that creates a corresponding Optional, and a toJavaPrimitive method that creates a specialized variant (e.g., OptionalInt) if applicable.

    Java Optional is extended with a toScala method and a toJavaPrimitive method.

    Finally, specialized Optional types are extended with toScala and toJavaGeneric methods.

    Example usage:

    import scala.jdk.OptionConverters._
    val a = Option("example").toJava      // Creates java.util.Optional[String] containing "example"
    val b = (None: Option[String]).toJava // Creates an empty java.util.Optional[String]
    val c = a.toScala                     // Back to Option("example")
    val d = b.toScala                     // Back to None typed as Option[String]
    val e = Option(2.7).toJava            // java.util.Optional[Double] containing boxed 2.7
    val f = Option(2.7).toJavaPrimitive   // java.util.OptionalDouble containing 2.7 (not boxed)
    val g = f.toScala                     // Back to Option(2.7)
    val h = f.toJavaGeneric               // Same as e
    val i = e.toJavaPrimitive             // Same as f
    Definition Classes
    jdk
  • RichOption
  • RichOptional
  • RichOptionalDouble
  • RichOptionalInt
  • RichOptionalLong

implicit final class RichOptional[A] extends AnyVal

Provides conversions from Java Optional to Scala Option and specialized Optional types

Source
OptionConverters.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. RichOptional
  2. AnyVal
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new RichOptional(o: Optional[A])

Value Members

  1. final def !=(arg0: Any): Boolean

    Test two objects for inequality.

    Test two objects for inequality.

    returns

    true if !(this == that), false otherwise.

    Definition Classes
    Any
  2. final def ##: Int

    Equivalent to x.hashCode except for boxed numeric types and null.

    Equivalent to x.hashCode except for boxed numeric types and null. For numerics, it returns a hash value which is consistent with value equality: if two value type instances compare as true, then ## will produce the same hash value for each of them. For null returns a hashcode where null.hashCode throws a NullPointerException.

    returns

    a hash value consistent with ==

    Definition Classes
    Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from RichOptional[A] toany2stringadd[RichOptional[A]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (RichOptional[A], B)
    Implicit
    This member is added by an implicit conversion from RichOptional[A] toArrowAssoc[RichOptional[A]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean

    Test two objects for equality.

    Test two objects for equality. The expression x == that is equivalent to if (x eq null) that eq null else x.equals(that).

    returns

    true if the receiver object is equivalent to the argument; false otherwise.

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Cast the receiver object to be of type T0.

    Cast the receiver object to be of type T0.

    Note that the success of a cast at runtime is modulo Scala's erasure semantics. Therefore the expression 1.asInstanceOf[String] will throw a ClassCastException at runtime, while the expression List(1).asInstanceOf[List[String]] will not. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the requested type.

    returns

    the receiver object.

    Definition Classes
    Any
    Exceptions thrown

    ClassCastException if the receiver object is not an instance of the erasure of type T0.

  7. def ensuring(cond: (RichOptional[A]) => Boolean, msg: => Any): RichOptional[A]
    Implicit
    This member is added by an implicit conversion from RichOptional[A] toEnsuring[RichOptional[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  8. def ensuring(cond: (RichOptional[A]) => Boolean): RichOptional[A]
    Implicit
    This member is added by an implicit conversion from RichOptional[A] toEnsuring[RichOptional[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  9. def ensuring(cond: Boolean, msg: => Any): RichOptional[A]
    Implicit
    This member is added by an implicit conversion from RichOptional[A] toEnsuring[RichOptional[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  10. def ensuring(cond: Boolean): RichOptional[A]
    Implicit
    This member is added by an implicit conversion from RichOptional[A] toEnsuring[RichOptional[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def formatted(fmtstr: String): String

    Returns string formatted according to given format string.

    Returns string formatted according to given format string. Format strings are as for String.format (@see java.lang.String.format).

    Implicit
    This member is added by an implicit conversion from RichOptional[A] toStringFormat[RichOptional[A]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  12. def getClass(): Class[_ <: AnyVal]

    Returns the runtime class representation of the object.

    Returns the runtime class representation of the object.

    returns

    a class object corresponding to the runtime type of the receiver.

    Definition Classes
    AnyValAny
  13. final def isInstanceOf[T0]: Boolean

    Test whether the dynamic type of the receiver object is T0.

    Test whether the dynamic type of the receiver object is T0.

    Note that the result of the test is modulo Scala's erasure semantics. Therefore the expression 1.isInstanceOf[String] will return false, while the expression List(1).isInstanceOf[List[String]] will return true. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the specified type.

    returns

    true if the receiver object is an instance of erasure of type T0; false otherwise.

    Definition Classes
    Any
  14. def toJavaPrimitive[O](implicit shape: OptionShape[A, O]): O

    Convert a generic Java Optional to a specialized variant

  15. def toScala: Option[A]

    Convert a Java Optional to a Scala Option

  16. def toString(): String

    Returns a string representation of the object.

    Returns a string representation of the object.

    The default representation is platform dependent.

    returns

    a string representation of the object.

    Definition Classes
    Any

Deprecated Value Members

  1. def asScala: Option[A]

    Convert a Java Optional to a Scala Option

    Convert a Java Optional to a Scala Option

    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use toScala instead

  2. def [B](y: B): (RichOptional[A], B)
    Implicit
    This member is added by an implicit conversion from RichOptional[A] toArrowAssoc[RichOptional[A]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from AnyVal

Inherited from Any

Inherited by implicit conversion any2stringadd fromRichOptional[A] to any2stringadd[RichOptional[A]]

Inherited by implicit conversion StringFormat fromRichOptional[A] to StringFormat[RichOptional[A]]

Inherited by implicit conversion Ensuring fromRichOptional[A] to Ensuring[RichOptional[A]]

Inherited by implicit conversion ArrowAssoc fromRichOptional[A] to ArrowAssoc[RichOptional[A]]

Ungrouped