Transforms an array of bytes into an array of org.opalj.br.instructions.Instructions.
Transforms an array of bytes into an array of org.opalj.br.instructions.Instructions.
Resolves an org.opalj.br.instructions.INCOMPLETE_INVOKEDYNAMIC instruction using the BootstrapMethodTable of the class.
Resolves an org.opalj.br.instructions.INCOMPLETE_INVOKEDYNAMIC instruction using the BootstrapMethodTable of the class.
Deferred resolution is necessary since the BootstrapMethodTable – which is an attribute of the class file – is loaded after the methods.
The ClassFile with which the deferred action was registered.
The class file's Constant_Pool.
The org.opalj.br.instructions.INVOKEDYNAMIC instruction's constant pool entry.
This method's array of instructions.Instructions. (The array returned by the #Instructions method.)
The program counter of the invokedynamic instruction.
This method is called (back) after the class file was completely loaded.
Registration as a callback method happens whenever an invokedynamic
instruction is found in a method's byte code.
To perform additional analyses on invokedynamic instructions, e.g. to
fully resolve the call target, a subclass may override this method to do so.
When you override this method, you should call this method
(super.deferredResolveInvokedynamicInstruction) to ensure that the default resolution
is carried out.
This property determines whether artificial SynthesizedClassFiles attributes are kept or removed.
This property determines whether artificial SynthesizedClassFiles attributes are kept or removed.
This setting can be set using the configuration key
ClassFileBinding.DeleteSynthesizedClassFilesAttributesConfigKey.
Tests if the class file has a SynthesizedClassFiles attribute and – if so – extracts the class file and removes the attribute.
Tests if the class file has a SynthesizedClassFiles attribute and – if so – extracts the class file and removes the attribute.
Removes all BootstrapMethodTable attributes because the invokedynamic instructions are
either completely resolved by creating code that resembles the code executed by the
JVM or the instructions are at least enhanced and have explicit references to the
bootstrap methods.
Removes all BootstrapMethodTable attributes because the invokedynamic instructions are
either completely resolved by creating code that resembles the code executed by the
JVM or the instructions are at least enhanced and have explicit references to the
bootstrap methods.
This "framework" can be used to read in Java 7 (version 51) class files. All standard information (as defined in the Java Virtual Machine Specification) is represented.