P package

scala

Members

package 

scala.annotation

package 

scala.compiletime

package 

scala.implicits

package 

scala.internal

package 

scala.quoted

package 

scala.reflect

package 

scala.runtime

package 

scala.tasty

package 

scala.util

sealed abstract class 

*:

[+H, +T]

object 

*:

abstract class 

Conversion

[-T, +U]

A class for implicit values that can serve as implicit conversions The implicit resolution algorithm will act as if there existed the additional implici...

[T, U][T, U]

A class for implicit values that can serve as implicit conversions The implicit resolution algorithm will act as if there existed the additional implicit definition:

def $implicitConversion[T, U](x: T)(c: Conversion[T, U]): U = c(x)

However, the presence of this definition would slow down implicit search since its outermost type matches any pair of types. Therefore, implicit search contains a special case in Implicits#discardForView which emulates the conversion in a more efficient way.

Note that this is a SAM class - function literals are automatically converted to the Conversion values.

Also note that in bootstrapped dotty, Predef.<:< should inherit from Conversion. This would cut the number of special cases in discardForView from two to one.

trait 

Enum

A base trait of all enum classes

A base trait of all enum classes

object 

Eql

Companion object containing a few universally known Eql instances. Eql instances involving primitive types or the Null type are handled directly in the...

Companion object containing a few universally known Eql instances. Eql instances involving primitive types or the Null type are handled directly in the compiler (see Implicits.synthesizedEq), so they are not included here.

sealed trait 

Eql

[-L, -R]

A marker trait indicating that values of type L can be compared to values of type R.

A marker trait indicating that values of type L can be compared to values of type R.

trait 

FunctionXXL

A function with all parameters grouped in an array.

A function with all parameters grouped in an array.

sealed trait 

NonEmptyTuple

Tuple of arbitrary non-zero arity

Tuple of arbitrary non-zero arity

trait 

PolyFunction

Marker trait for polymorphic function types.

This is the only trait that can be refined with a polymorphic method, as long as that method is called appl... [T_1, ..., T_M]

Marker trait for polymorphic function types.

This is the only trait that can be refined with a polymorphic method, as long as that method is called apply, e.g.: PolyFunction { def apply[T_1, ..., T_M](x_1: P_1, ..., x_N: P_N): R } This type will be erased to FunctionN.

object 

Product0

A class for Product0 which was missing from the scala distribution.

A class for Product0 which was missing from the scala distribution.

trait 

Product0

trait 

Selectable

object 

Tuple

sealed trait 

Tuple

Tuple of arbitrary arity

Tuple of arbitrary arity

final class 

TupleXXL

object 

TupleXXL

sealed trait 

TupledFunction

[F, G]

Type class relating a FunctionN[..., R] with an equivalent tupled function Function1[TupleN[...], R]

Type class relating a FunctionN[..., R] with an equivalent tupled function Function1[TupleN[...], R]

object 

deriving

class 

main

An annotation that designates a main function

An annotation that designates a main function