Object

sbt.internal.inc

ClassToAPI

Related Doc: package inc

Permalink

object ClassToAPI

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ClassToAPI
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. final class ClassMap extends AnyRef

    Permalink
  2. case class Defs(declared: Seq[ClassDefinition], inherited: Seq[ClassDefinition], staticDeclared: Seq[ClassDefinition], staticInherited: Seq[ClassDefinition]) extends Product with Serializable

    Permalink

Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. val ArrayRef: Type

    Permalink
  5. val Empty: EmptyType

    Permalink
  6. val NothingRef: Type

    Permalink
  7. val Private: Private

    Permalink
  8. val Protected: Protected

    Permalink
  9. val Public: Public

    Permalink
  10. val ThisRef: This

    Permalink
  11. val Throws: Type

    Permalink
  12. val Unqualified: Unqualified

    Permalink
  13. def access(i: Int, pkg: Option[String]): Access

    Permalink
  14. def annotated(t: Type, annots: Array[Annotation]): Type

    Permalink
  15. def annotation(a: Annotation): Annotation

    Permalink
  16. def annotations(a: Array[Annotation]): Array[Annotation]

    Permalink
  17. def apply(c: Seq[Class[_]]): Seq[ClassLike]

    Permalink
  18. def array(tpe: Type): Type

    Permalink
  19. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  20. def classCanonicalName(c: Class[_]): String

    Permalink
  21. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. def constructorToDef(enclPkg: Option[String])(c: Constructor[_]): Def

    Permalink
  23. def defLike[T <: GenericDeclaration](name: String, mods: Int, annots: Array[Annotation], tps: Array[TypeVariable[T]], paramAnnots: Array[Array[Annotation]], paramTypes: Array[Type], retType: Option[Type], exceptions: Array[Type], varArgs: Boolean, enclPkg: Option[String]): Def

    Permalink
  24. def emptyClassMap: ClassMap

    Permalink
  25. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  26. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  27. def exceptionAnnotations(exceptions: Array[Type]): Array[Annotation]

    Permalink
  28. def fieldToDef(c: Class[_], cf: ⇒ ClassFile, enclPkg: Option[String])(f: Field): FieldLike

    Permalink
  29. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  30. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  31. def handleMalformedNameOf(c: Class[_], isRecursive: Boolean = false): String

    Permalink

    The binary name encoding for Scala has been broken for a while.

    The binary name encoding for Scala has been broken for a while. It does not follow the Java source name rules because it does not append a $ after the mirror class of an object, which already ends in $.

    Zinc works around this fix in the only way it can: it gets the enclosing class, which is obtained from the InnerClasses java classfile metadata, and it reconstructs the path from there. It circumvents, by design, the core issue: it doesn't call Java's name parser at all.

    This issue has been fixed in the JDK9, but unfortunately it's going to be tormenting us for a while because 2.13 does not target Java 9, and we're still at 2.12.x.

    This is the fix in Java 9.

    In order to fully fix this issue, the Scala compiler should do the desired behaviour in 2.13.x. 2.12.x is already lost since this fix is binary incompatible. The appropriate issue is here: https://github.com/scala/bug/issues/2034.

    returns

    The canonical name if not null, the blank string otherwise.

  32. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  33. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  34. def isStatic(a: Member): Boolean

    Permalink
  35. def isStatic(c: Class[_]): Boolean

    Permalink
  36. def isTopLevel(c: Class[_]): Boolean

    Permalink
  37. def javaAnnotation(s: String): AnnotationArgument

    Permalink
  38. final def lzy[T <: AnyRef](t: ⇒ T): Lazy[T]

    Permalink
    Annotations
    @inline()
  39. def merge[T](of: Class[_], self: Seq[T], public: Seq[T], f: (T) ⇒ Seq[ClassDefinition], splitStatic: (Seq[T]) ⇒ (Seq[T], Seq[T]), isInherited: (T) ⇒ Boolean): Defs

    Permalink
  40. def mergeMap[T <: Member](of: Class[_], self: Seq[T], public: Seq[T], f: (T) ⇒ ClassDefinition): Defs

    Permalink
  41. def methodToDef(enclPkg: Option[String])(m: Method): Def

    Permalink
  42. def modifiers(i: Int): Modifiers

    Permalink
  43. def name(gd: GenericDeclaration): String

    Permalink
  44. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  45. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  46. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  47. def packageAndName(name: String): (Option[String], String)

    Permalink
  48. def packageAndName(c: Class[_]): (Option[String], String)

    Permalink
  49. def packageName(c: Class[_]): Option[String]

    Permalink
  50. def packagePrivate(pkg: Option[String]): Access

    Permalink
  51. def packages(c: Seq[Class[_]]): Set[String]

    Permalink
  52. def parameter(annots: Array[Annotation], parameter: Type, varArgs: Boolean): MethodParameter

    Permalink
  53. def pathFromString(s: String): Path

    Permalink
  54. def pathFromStrings(ss: Seq[String]): Path

    Permalink
  55. def primitive(name: String): Type

    Permalink
  56. def process(classes: Seq[Class[_]]): (Seq[ClassLike], Seq[String], Set[(Class[_], Class[_])])

    Permalink
  57. def reduceHash(in: Array[Byte]): Int

    Permalink
  58. def reference(t: Type): Type

    Permalink
  59. def reference(s: String): Type

    Permalink
  60. def reference(c: Class[_]): Type

    Permalink
  61. def referenceP(t: ParameterizedType): Parameterized

    Permalink
  62. def splitStatic[T <: Member](defs: Seq[T]): (Seq[T], Seq[T])

    Permalink
  63. def structure(c: Class[_], enclPkg: Option[String], cmap: ClassMap): (Structure, Structure)

    Permalink

    Returns the (static structure, instance structure, inherited classes) for c.

  64. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  65. def toDefinitions(cmap: ClassMap)(c: Class[_]): Seq[ClassLikeDef]

    Permalink
  66. def toDefinitions0(c: Class[_], cmap: ClassMap): Seq[ClassLikeDef]

    Permalink
  67. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  68. def typeParameter[T <: GenericDeclaration](tp: TypeVariable[T]): TypeParameter

    Permalink
  69. def typeParameters[T <: GenericDeclaration](tps: Array[TypeVariable[T]]): Array[TypeParameter]

    Permalink
  70. def typeVariable[T <: GenericDeclaration](tv: TypeVariable[T]): String

    Permalink
  71. def types(ts: Seq[Type]): Array[Type]

    Permalink
  72. def upperBounds(ts: Array[Type]): Type

    Permalink
  73. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  74. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  75. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def fieldToDef(enclPkg: Option[String])(f: Field): FieldLike

    Permalink
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13.9) Use fieldToDef[4] instead

  2. def parents(c: Class[_]): Seq[Type]

    Permalink
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13.0) No longer used

Inherited from AnyRef

Inherited from Any

Ungrouped