trait Types extends AnyRef
- Alphabetic
- By Inheritance
- Types
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
trait
AbsCompoundType
extends Universe.AbsType
This class declares methods that are visible in a
CompoundType(i.e.This class declares methods that are visible in a
CompoundType(i.e. a class/trait/object template or refined type of the formP_1 with ... with P_m { D_1; ...; D_n }
P_n
-
trait
AbsSingletonType
extends Universe.AbsType
This class declares methods that are visible in a
SingleType. -
abstract
class
AbsType
extends AnyRef
This class declares operations that are visible in a Type.
- abstract type AnnotatedType <: Universe.Type
- abstract class AnnotatedTypeExtractor extends AnyRef
-
abstract
type
ClassInfoType <: Universe.CompoundType
The
ClassInfotype signature is used to define parents and declarations of classes, traits, and objects.The
ClassInfotype signature is used to define parents and declarations of classes, traits, and objects. If a class, trait, or object C is declared like thisC extends P_1 with ... with P_m { D_1; ...; D_n}
its
ClassInfotype has the following form:ClassInfo(List(P_1, ..., P_m), Scope(D_1, ..., D_n), C) -
abstract
class
ClassInfoTypeExtractor
extends AnyRef
An extractor class to create and pattern match with syntax
ClassInfo(parents, decls, clazz)Here,parentsis the list of parent types of the class,declsis the scope containing all declarations in the class, andclazzis the symbol of the class itself. -
abstract
type
CompoundType <: Universe.Type
A subtype of Type representing refined types as well as
ClassInfosignatures. -
abstract
type
ConstantType <: Universe.SingletonType
The
ConstantTypetype is not directly written in user programs, but arises as the type of a constant.The
ConstantTypetype is not directly written in user programs, but arises as the type of a constant. The REPL expresses constant types like Int(11). Here are some constants with their types.1 ConstantType(Constant(1)) "abc" ConstantType(Constant("abc"))
-
abstract
class
ConstantTypeExtractor
extends AnyRef
An extractor class to create and pattern match with syntax
ConstantType(constant)Here,constantis the constant value represented by the type. - abstract type ExistentialType <: Universe.Type
- abstract class ExistentialTypeExtractor extends AnyRef
-
abstract
type
MethodType <: Universe.Type
The
MethodTypetype signature is used to indicate parameters and result type of a method -
abstract
class
MethodTypeExtractor
extends AnyRef
An extractor class to create and pattern match with syntax
MethodType(params, respte)Here,paramsis a potentially empty list of parameter symbols of the method, andrestpeis the result type of the method.An extractor class to create and pattern match with syntax
MethodType(params, respte)Here,paramsis a potentially empty list of parameter symbols of the method, andrestpeis the result type of the method. If the method is curried,restpewould be anotherMethodType. Note:MethodType(Nil, Int)would be the type of a method defined with an empty parameter list.def f(): Int
If the method is completely parameterless, as in
def f: Int
its type is a
NullaryMethodType. - abstract type NullaryMethodType <: Universe.Type
- abstract class NullaryMethodTypeExtractor extends AnyRef
- abstract type PolyType <: Universe.Type
- abstract class PolyTypeExtractor extends AnyRef
-
abstract
type
RefinedType <: Universe.CompoundType
The
RefinedTypetype defines types of any of the forms on the left, with their RefinedType representations to the right.The
RefinedTypetype defines types of any of the forms on the left, with their RefinedType representations to the right.P_1 with ... with P_m { D_1; ...; D_n} RefinedType(List(P_1, ..., P_m), Scope(D_1, ..., D_n)) P_1 with ... with P_m RefinedType(List(P_1, ..., P_m), Scope()) { D_1; ...; D_n} RefinedType(List(AnyRef), Scope(D_1, ..., D_n))
-
abstract
class
RefinedTypeExtractor
extends AnyRef
An extractor class to create and pattern match with syntax
RefinedType(parents, decls)Here,parentsis the list of parent types of the class, anddeclsis the scope containing all declarations in the class. -
abstract
type
SingleType <: Universe.SingletonType
The
SingleTypetype describes types of any of the forms on the left, with their TypeRef representations to the right.The
SingleTypetype describes types of any of the forms on the left, with their TypeRef representations to the right.(T # x).type SingleType(T, x) p.x.type SingleType(p.type, x) x.type SingleType(NoPrefix, x)
-
abstract
class
SingleTypeExtractor
extends AnyRef
An extractor class to create and pattern match with syntax
SingleType(pre, sym)Here,preis the prefix of the single-type, andsymis the stable value symbol referred to by the single-type. -
abstract
type
SingletonType >: Null <: Universe.Type
The type of Scala singleton types, i.e.
The type of Scala singleton types, i.e. types that are inhabited by only one nun-null value. These include types of the forms
C.this.type C.super.type x.type
as well as constant types.
-
abstract
type
SuperType <: Universe.SingletonType
The
SuperTypetype is not directly written, but arises whenC.superis used as a prefix in aTypeReforSingleType.The
SuperTypetype is not directly written, but arises whenC.superis used as a prefix in aTypeReforSingleType. It's internal presentation isSuperType(thistpe, supertpe)
Here,
thistpeis the type of the corresponding this-type. For instance, in the type arising from C.super, thethistpepart would beThisType(C).supertpeis the type of the super class referred to by thesuper. -
abstract
class
SuperTypeExtractor
extends AnyRef
An extractor class to create and pattern match with syntax
SingleType(thistpe, supertpe) -
abstract
type
ThisType <: Universe.SingletonType
The
ThisTypetype describes types of the form on the left with the correspnding ThisType representations to the right.The
ThisTypetype describes types of the form on the left with the correspnding ThisType representations to the right.C.this.type ThisType(C)
-
abstract
class
ThisTypeExtractor
extends AnyRef
An extractor class to create and pattern match with syntax
ThisType(sym)wheresymis the class prefix of the this type. -
abstract
type
Type >: Null <: Universe.AbsType
The type of Scala types, and also Scala type signatures.
The type of Scala types, and also Scala type signatures. (No difference is internally made between the two).
-
abstract
type
TypeBounds <: Universe.Type
The
TypeBoundstype signature is used to indicate lower and upper type bounds of type parameters and abstract types.The
TypeBoundstype signature is used to indicate lower and upper type bounds of type parameters and abstract types. It is not a first-class type. If an abstract type or type parameter is declared with any of the forms on the left, its type signature is the TypeBounds type on the right.T >: L <: U TypeBounds(L, U) T >: L TypeBounds(L, Any) T <: U TypeBounds(Nothing, U)
-
abstract
class
TypeBoundsExtractor
extends AnyRef
An extractor class to create and pattern match with syntax
TypeBound(lower, upper)Here,loweris the lower bound of theTypeBoundspair, andupperis the upper bound. -
abstract
type
TypeRef <: Universe.Type
The
TypeReftype describes types of any of the forms on the left, with their TypeRef representations to the right.The
TypeReftype describes types of any of the forms on the left, with their TypeRef representations to the right.T # C[T_1, ..., T_n] TypeRef(T, C, List(T_1, ..., T_n)) p.C[T_1, ..., T_n] TypeRef(p.type, C, List(T_1, ..., T_n)) C[T_1, ..., T_n] TypeRef(NoPrefix, C, List(T_1, ..., T_n)) T # C TypeRef(T, C, Nil) p.C TypeRef(p.type, C, Nil) C TypeRef(NoPrefix, C, Nil)
-
abstract
class
TypeRefExtractor
extends AnyRef
An extractor class to create and pattern match with syntax
TypeRef(pre, sym, args)Here,preis the prefix of the type reference,symis the symbol referred to by the type reference, andargsis a possible empty list of type argumenrts.
Abstract Value Members
- abstract val AnnotatedType: Universe.AnnotatedTypeExtractor
-
abstract
val
ClassInfoType: Universe.ClassInfoTypeExtractor
The constructor/deconstructor for
ClassInfoTypeinstances. -
abstract
val
ConstantType: Universe.ConstantTypeExtractor
The constructor/deconstructor for
ConstantTypeinstances. - abstract val ExistentialType: Universe.ExistentialTypeExtractor
-
abstract
val
MethodType: Universe.MethodTypeExtractor
The constructor/deconstructor for
MethodTypeinstances. -
abstract
val
NoPrefix: Universe.Type
This constant is used as a special value denoting the empty prefix in a path dependent type.
This constant is used as a special value denoting the empty prefix in a path dependent type. For instance
x.typeis represented asSingleType(NoPrefix, <x>), where<x>stands for the symbol forx. -
abstract
val
NoType: Universe.Type
This constant is used as a special value that indicates that no meaningful type exists.
- abstract val NullaryMethodType: Universe.NullaryMethodTypeExtractor
- abstract val PolyType: Universe.PolyTypeExtractor
-
abstract
val
RefinedType: Universe.RefinedTypeExtractor
The constructor/deconstructor for
RefinedTypeinstances. -
abstract
val
SingleType: Universe.SingleTypeExtractor
The constructor/deconstructor for
SingleTypeinstances. -
abstract
val
SuperType: Universe.SuperTypeExtractor
The constructor/deconstructor for
SuperTypeinstances. -
abstract
val
ThisType: Universe.ThisTypeExtractor
The constructor/deconstructor for
ThisTypeinstances. -
abstract
val
TypeBounds: Universe.TypeBoundsExtractor
The constructor/deconstructor for
TypeBoundsinstances. -
abstract
val
TypeRef: Universe.TypeRefExtractor
The constructor/deconstructor for
TypeRefinstances.
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )