trait TypeAnnotationTable extends CodeAttribute
The runtime (in)visible type annotations of a class, method, field or code block.
- Source
- TypeAnnotationTable.scala
- Note
For further information about type-level annotations go to: http://cr.openjdk.java.net/~abuckley/8misc.pdf.
- Alphabetic
- By Inheritance
- TypeAnnotationTable
- CodeAttribute
- Attribute
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def copy(typeAnnotations: TypeAnnotations): TypeAnnotationTable
- abstract def isRuntimeVisible: Boolean
Returns true if these annotations are visible at runtime.
- abstract def kindId: Int
Returns the unique ID that identifies this kind of attribute (Signature, LineNumberTable, ...)
Returns the unique ID that identifies this kind of attribute (Signature, LineNumberTable, ...)
This id can then be used in a switch statement to efficiently identify the attribute.
(attribute.id : @scala.annotation.switch) match { case Signature.Id => ... }
Associating Unique Id
The unique ids are manually associated with the attributes. The attributes use the following IDs:
- (-1 Unknown Attribute)
- 1-5 The ConstantValue Attribute
- 6 The Code Attribute
- 7 The StackMapTable Attribute
- 8 The Exceptions Attribute
- 9 The InnerClasses Attribute
- 10 The EnclosingMethod Attribute
- 11 The Synthetic Attribute
- 12-16 The Signature Attribute
- 17 The SourceFile Attribute
- 18 The SourceDebugExtension Attribute
- 19 The LineNumberTable Attribute
- 20 The LocalVariableTable Attribute
- 21 The LocalVariableTypeTable Attribute
- 22 The Deprecated Attribute
- 23 The RuntimeVisibleAnnotations Attribute
- 24 The RuntimeInvisibleAnnotations Attribute
- 25 The RuntimeVisibleParameterAnnotations Attribute
- 26 The RuntimeInvisibleParameterAnnotations Attribute
- 27 The RuntimeVisibleTypeAnnotations Attribute
- 28 The RuntimeInvisibleTypeAnnotations Attribute
- 29-41 The AnnotationDefault Attribute
- 42 The BootstrapMethods Attribute
- 43 The MethodParameters Attribute
- 44 The Module Attribute (Java 9)
- 45 The ModuleMainClass Attribute (Java 9)
- 46 The ModulePackages Attribute (Java 9)
- 47 The NestHost Attribute (Java 11)
- 48 The NestMembers Attribute (Java 11)
- 49 The Record Attribute (Java 16)
- 1001 OPAL's VirtualTypeFlag Attribute
- 1002 OPAL's SynthesizedClassFiles Attribute
- 1003 OPAL's TACode Attribute (the 3-Address Code)
- Definition Classes
- Attribute
- abstract def typeAnnotations: TypeAnnotations
The set of declared annotations; it may be empty.
Concrete 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
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- def remapPCs(codeSize: Int, f: (PC) => PC): TypeAnnotationTable
A function that provides the new PC for every "old" PC.
A function that provides the new PC for every "old" PC. If an instruction I with the pc X does not exist (anymore), the pc of I is equal or larger than
codeSize
.- Definition Classes
- TypeAnnotationTable → CodeAttribute
- def similar(other: TypeAnnotationTable): Boolean
- def similar(other: Attribute, config: SimilarityTestConfiguration): Boolean
Returns true if this attribute and the given one are guaranteed to be indistinguishable at runtime.
Returns true if this attribute and the given one are guaranteed to be indistinguishable at runtime.
- Definition Classes
- TypeAnnotationTable → Attribute
- Note
If this class is implemented as a proper
case class
, this method can often be implemented by forwarding to the defaultequals
method.
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated