object CODE
- Alphabetic
- By Inheritance
- CODE
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
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 val CodeConfigKeyPrefix: String("org.opalj.ba.CODE.")
- final val LogCodeRewritingConfigKey: String("org.opalj.ba.CODE.logCodeRewriting")
- final val LogDeadCodeConfigKey: String("org.opalj.ba.CODE.logDeadCode")
- final val LogDeadCodeRemovalConfigKey: String("org.opalj.ba.CODE.logDeadCodeRemoval")
- def apply[T](initialCodeElements: IndexedSeq[CodeElement[T]]): CodeAttributeBuilder[T]
- def apply[T](codeElements: CodeElement[T]*): CodeAttributeBuilder[T]
Creates a new CodeAttributeBuilder with the given CodeElements converted to org.opalj.br.instructions.Instruction.
Creates a new CodeAttributeBuilder with the given CodeElements converted to org.opalj.br.instructions.Instruction. In case of org.opalj.br.instructions.LabeledInstructions the label is already resolved. The annotations are resolved to program counters as well.
- See also
CodeElement for possible arguments.
- 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
- implicit def logContext: LogContext
- 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 removeDeadCode[T](codeElements: IndexedSeq[CodeElement[T]]): IndexedSeq[CodeElement[T]]
Removes (compile-time) dead (pseudo) instructions from the given code by performing a most conservative control-flow analysis.
Removes (compile-time) dead (pseudo) instructions from the given code by performing a most conservative control-flow analysis. The goal is to remove just those instructions which would hinder the computation of a stack-map table. Data-flow information (in particular the potential types of concrete exceptions) are not tracked; i.e., if we have a try block with some instructions the related catch block is considered to be live, even if the declared exception is never thrown). TODO If we have a try block with instructions that NEVER throw any exception, we should remove it; requires (control-flow dependent!) tests when we set a TRY to live ...) We never remove "PCLabels" to ensure the completeness of pc mappings.
- Note
The code element has to be valid bytecode; i.e., a verification of the code using the old, pre Java 7 (type-inference based) bytecode verified would succeed!
- def setBaseConfig(config: Config): Unit
- 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