object intoNodes extends DestructureType[TypeNode]
- Source
- TypeStrings.scala
- Alphabetic
- By Inheritance
- intoNodes
- DestructureType
- Function1
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
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
-
def
andThen[A](g: (TypeNode) ⇒ A): (Global.Type) ⇒ A
- Definition Classes
- Function1
- Annotations
- @unspecialized()
-
def
annotatedType(annotations: List[Global.AnnotationInfo], underlying: Global.Type): TypeNode
- Definition Classes
- DestructureType
-
def
annotation(ann: Global.AnnotationInfo): TypeNode
- Definition Classes
- DestructureType
-
def
apply(tp: Global.Type): TypeNode
- Definition Classes
- DestructureType → Function1
-
def
apply(label: String, tp: Global.Type): TypeNode
- Definition Classes
- DestructureType
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
atom[U](label: String, value: U): TypeNode
- Definition Classes
- DestructureType
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
compose[A](g: (A) ⇒ Global.Type): (A) ⇒ TypeNode
- Definition Classes
- Function1
- Annotations
- @unspecialized()
-
def
constant(label: String, const: Global.Constant): TypeNode
- Definition Classes
- DestructureType
-
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
-
def
list(nodes: List[TypeNode]): TypeNode
- Definition Classes
- DestructureType
-
def
monoFunction(params: List[Global.Symbol], restpe: Global.Type): TypeNode
- Definition Classes
- DestructureType
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
node(label: String, node: TypeNode): TypeNode
- Definition Classes
- DestructureType
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
nullaryFunction(restpe: Global.Type): TypeNode
- Definition Classes
- DestructureType
-
def
parentList(tps: List[Global.Type]): TypeNode
- Definition Classes
- DestructureType
-
def
polyFunction(tparams: List[Global.Symbol], restpe: Global.Type): TypeNode
- Definition Classes
- DestructureType
-
def
prefix(pre: Global.Type): TypeNode
- Definition Classes
- DestructureType
-
def
product(typeName: String, nodes: TypeNode*): TypeNode
- Definition Classes
- DestructureType
-
def
product(tp: Global.Type, nodes: TypeNode*): TypeNode
- Definition Classes
- DestructureType
-
def
resultType(restpe: Global.Type): TypeNode
- Definition Classes
- DestructureType
-
def
scope(decls: Global.Scope): TypeNode
- Definition Classes
- DestructureType
-
def
symbolType(sym: Global.Symbol): String
- Definition Classes
- DestructureType
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- Function1 → AnyRef → Any
-
def
typeArgs(tps: List[Global.Type]): TypeNode
- Definition Classes
- DestructureType
-
def
typeBounds(lo0: Global.Type, hi0: Global.Type): TypeNode
- Definition Classes
- DestructureType
-
def
typeConstraint(constr: Global.TypeConstraint): TypeNode
- Definition Classes
- DestructureType
-
def
typeParams(tps: List[Global.Symbol]): TypeNode
- Definition Classes
- DestructureType
-
def
typeRef(tp: Global.TypeRef): TypeNode
This imposes additional structure beyond that which is visible in the case class hierarchy.
This imposes additional structure beyond that which is visible in the case class hierarchy. In particular, (too) many different constructs are encoded in TypeRefs; here they are partitioned somewhat before being dispatched.
For example, a typical type parameter is encoded as TypeRef(NoPrefix, sym, Nil) with its upper and lower bounds stored in the info of the symbol. Viewing the TypeRef naively we are treated to both too much information (useless prefix, usually empty args) and too little (bounds hidden behind indirection.) So drop the prefix and promote the bounds.
- Definition Classes
- DestructureType
-
def
typeRefType(sym: Global.Symbol): String
- Definition Classes
- DestructureType
-
def
valueParams(params: List[Global.Symbol]): TypeNode
- Definition Classes
- DestructureType
-
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( ... )
-
def
withLabel(node: TypeNode, label: String): TypeNode
- Definition Classes
- intoNodes → DestructureType
-
def
withType(node: TypeNode, typeName: String): TypeNode
- Definition Classes
- intoNodes → DestructureType
-
def
wrapAtom[U](value: U): TypeAtom[U]
- Definition Classes
- intoNodes → DestructureType
-
def
wrapEmpty: TypeEmpty.type
- Definition Classes
- intoNodes → DestructureType
-
def
wrapMono(in: TypeNode, out: TypeNode): TypeNode
- Definition Classes
- intoNodes → DestructureType
-
def
wrapPoly(in: TypeNode, out: TypeNode): PolyFunction
- Definition Classes
- intoNodes → DestructureType
-
def
wrapProduct(nodes: List[TypeNode]): TypeProduct
- Definition Classes
- intoNodes → DestructureType
-
def
wrapSequence(nodes: List[TypeNode]): TypeList
- Definition Classes
- intoNodes → DestructureType
-
def
wrapSymbolInfo(sym: Global.Symbol): TypeNode
- Definition Classes
- DestructureType
-
def
wrapTree(tree: Global.Tree): TypeNode
- Definition Classes
- DestructureType
The Scala compiler and reflection APIs.