Packages

object intoNodes extends DestructureType[TypeNode]

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. intoNodes
  2. DestructureType
  3. Function1
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. def andThen[A](g: (TypeNode) ⇒ A): (Global.Type) ⇒ A
    Definition Classes
    Function1
    Annotations
    @unspecialized()
  2. def annotatedType(annotations: List[Global.AnnotationInfo], underlying: Global.Type): TypeNode
    Definition Classes
    DestructureType
  3. def annotation(ann: Global.AnnotationInfo): TypeNode
    Definition Classes
    DestructureType
  4. def apply(tp: Global.Type): TypeNode
    Definition Classes
    DestructureType → Function1
  5. def apply(label: String, tp: Global.Type): TypeNode
    Definition Classes
    DestructureType
  6. def atom[U](label: String, value: U): TypeNode
    Definition Classes
    DestructureType
  7. def compose[A](g: (A) ⇒ Global.Type): (A) ⇒ TypeNode
    Definition Classes
    Function1
    Annotations
    @unspecialized()
  8. def constant(label: String, const: Global.Constant): TypeNode
    Definition Classes
    DestructureType
  9. def list(nodes: List[TypeNode]): TypeNode
    Definition Classes
    DestructureType
  10. def monoFunction(params: List[Global.Symbol], restpe: Global.Type): TypeNode
    Definition Classes
    DestructureType
  11. def node(label: String, node: TypeNode): TypeNode
    Definition Classes
    DestructureType
  12. def nullaryFunction(restpe: Global.Type): TypeNode
    Definition Classes
    DestructureType
  13. def parentList(tps: List[Global.Type]): TypeNode
    Definition Classes
    DestructureType
  14. def polyFunction(tparams: List[Global.Symbol], restpe: Global.Type): TypeNode
    Definition Classes
    DestructureType
  15. def prefix(pre: Global.Type): TypeNode
    Definition Classes
    DestructureType
  16. def product(typeName: String, nodes: TypeNode*): TypeNode
    Definition Classes
    DestructureType
  17. def product(tp: Global.Type, nodes: TypeNode*): TypeNode
    Definition Classes
    DestructureType
  18. def resultType(restpe: Global.Type): TypeNode
    Definition Classes
    DestructureType
  19. def scope(decls: Global.Scope): TypeNode
    Definition Classes
    DestructureType
  20. def symbolType(sym: Global.Symbol): String
    Definition Classes
    DestructureType
  21. def toString(): String
    Definition Classes
    Function1 → AnyRef → Any
  22. def typeArgs(tps: List[Global.Type]): TypeNode
    Definition Classes
    DestructureType
  23. def typeBounds(lo0: Global.Type, hi0: Global.Type): TypeNode
    Definition Classes
    DestructureType
  24. def typeConstraint(constr: Global.TypeConstraint): TypeNode
    Definition Classes
    DestructureType
  25. def typeParams(tps: List[Global.Symbol]): TypeNode
    Definition Classes
    DestructureType
  26. 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
  27. def typeRefType(sym: Global.Symbol): String
    Definition Classes
    DestructureType
  28. def valueParams(params: List[Global.Symbol]): TypeNode
    Definition Classes
    DestructureType
  29. def withLabel(node: TypeNode, label: String): TypeNode
    Definition Classes
    intoNodesDestructureType
  30. def withType(node: TypeNode, typeName: String): TypeNode
    Definition Classes
    intoNodesDestructureType
  31. def wrapAtom[U](value: U): TypeAtom[U]
    Definition Classes
    intoNodesDestructureType
  32. def wrapEmpty: TypeEmpty.type
    Definition Classes
    intoNodesDestructureType
  33. def wrapMono(in: TypeNode, out: TypeNode): TypeNode
    Definition Classes
    intoNodesDestructureType
  34. def wrapPoly(in: TypeNode, out: TypeNode): PolyFunction
    Definition Classes
    intoNodesDestructureType
  35. def wrapProduct(nodes: List[TypeNode]): TypeProduct
    Definition Classes
    intoNodesDestructureType
  36. def wrapSequence(nodes: List[TypeNode]): TypeList
    Definition Classes
    intoNodesDestructureType
  37. def wrapSymbolInfo(sym: Global.Symbol): TypeNode
    Definition Classes
    DestructureType
  38. def wrapTree(tree: Global.Tree): TypeNode
    Definition Classes
    DestructureType