final
class
LinkedClass extends AnyRef
Instance Constructors
-
new
LinkedClass(name: Ident, kind: ClassKind, jsClassCaptures: Option[List[ParamDef]], superClass: Option[Ident], interfaces: List[Ident], jsSuperClass: Option[Tree], jsNativeLoadSpec: Option[JSNativeLoadSpec], fields: List[FieldDef], staticMethods: List[Versioned[MethodDef]], memberMethods: List[Versioned[MethodDef]], exportedMembers: List[Versioned[MemberDef]], topLevelExports: List[Versioned[TopLevelExportDef]], optimizerHints: OptimizerHints, pos: Position, ancestors: List[String], hasInstances: Boolean, hasInstanceTests: Boolean, hasRuntimeTypeInfo: Boolean, version: Option[String])
Value Members
-
final
def
!=(arg0: Any): Boolean
-
final
def
##(): Int
-
final
def
==(arg0: Any): Boolean
-
val
ancestors: List[String]
-
final
def
asInstanceOf[T0]: T0
-
def
clone(): AnyRef
-
-
def
encodedName: String
-
-
-
val
exportedMembers: List[Versioned[MemberDef]]
-
val
fields: List[FieldDef]
-
def
finalize(): Unit
-
def
fullName: String
-
final
def
getClass(): Class[_]
-
val
hasEntryPoint: Boolean
-
val
hasInstanceTests: Boolean
-
val
hasInstances: Boolean
-
val
hasRuntimeTypeInfo: Boolean
-
def
hashCode(): Int
-
val
interfaces: List[Ident]
-
final
def
isInstanceOf[T0]: Boolean
-
val
jsClassCaptures: Option[List[ParamDef]]
-
val
jsNativeLoadSpec: Option[JSNativeLoadSpec]
-
val
jsSuperClass: Option[Tree]
-
-
val
memberMethods: List[Versioned[MethodDef]]
-
val
name: Ident
-
-
final
def
notify(): Unit
-
final
def
notifyAll(): Unit
-
val
optimizerHints: OptimizerHints
-
val
pos: Position
-
val
staticMethods: List[Versioned[MethodDef]]
-
val
superClass: Option[Ident]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
-
def
toString(): String
-
val
topLevelExports: List[Versioned[TopLevelExportDef]]
-
val
version: Option[String]
-
final
def
wait(): Unit
-
final
def
wait(arg0: Long, arg1: Int): Unit
-
final
def
wait(arg0: Long): Unit
A ClassDef after linking.
Note that the version in the LinkedClass does not cover staticMethods, memberMethods and exportedMembers as they have their individual versions. (The collections themselves are not versioned).
Moreover, the version is relative to the identity of a LinkedClass. The definition of identity varies as linked classes progress through the linking pipeline, but it only gets stronger, i.e., if two linked classes are id-different at phase P, then they must also be id-different at phase P+1. The converse is not true. This guarantees that versions can be used reliably to determine at phase P+1 whether a linked class coming from phase P must be reprocessed.