object BTypes
- Source
- BTypes.scala
- Alphabetic
- By Inheritance
- BTypes
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
final
case class
InlineInfo
(isEffectivelyFinal: Boolean, sam: Option[String], methodInfos: Map[String, MethodInlineInfo], warning: Option[ClassInlineInfoWarning]) extends Product with Serializable
Metadata about a ClassBType, used by the inliner.
Metadata about a ClassBType, used by the inliner.
More information may be added in the future to enable more elaborate inline heuristics. Note that this class should contain information that can only be obtained from the ClassSymbol. Information that can be computed from the ClassNode should be added to the call graph instead.
- isEffectivelyFinal
True if the class cannot have subclasses: final classes, module classes.
- sam
If this class is a SAM type, the SAM's "$name$descriptor".
- methodInfos
The MethodInlineInfos for the methods declared in this class. The map is indexed by the string s"$name$descriptor" (to disambiguate overloads).
- warning
Contains an warning message if an error occurred when building this InlineInfo, for example if some classfile could not be found on the classpath. This warning can be reported later by the inliner.
-
type
InternalName = String
A marker for strings that represent class internal names.
A marker for strings that represent class internal names. Ideally the type would be incompatible with String, for example by making it a value class. But that would create overhead in a Collection[InternalName].
-
final
case class
MethodInlineInfo
(effectivelyFinal: Boolean, annotatedInline: Boolean, annotatedNoInline: Boolean) extends Product with Serializable
Metadata about a method, used by the inliner.
Metadata about a method, used by the inliner.
- effectivelyFinal
True if the method cannot be overridden (in Scala)
- annotatedInline
True if the method is annotated
@inline
- annotatedNoInline
True if the method is annotated
@noinline
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
- val EmptyInlineInfo: InlineInfo
- val InlinedLocalVariablePrefixMaxLenght: Int
- val ScalaAttributeName: String
- val ScalaSigAttributeName: String
-
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( ... )
The Scala compiler and reflection APIs.