A DeferredActionsStore stores all functions that need to perform post load actions.
A DeferredActionsStore stores all functions that need to perform post load actions.
One example is the resolution of references to attributes. (The constant pool is the only structure that is passed around and hence it is the only place where to store information/functions related to a specific class file).
This method is called/needs to be called after the class file was completely loaded to perform class file specific transformations.
This method is called/needs to be called after the class file was completely loaded to perform class file specific transformations.
Called (typically by subclasses) to register a reader for a concrete attribute.
Called (typically by subclasses) to register a reader for a concrete attribute.
This function is intended to be provided/implemented by an AttributesReader
that manages the attributes of a class, method_info, field_info or
code_attribute structure.
A map where the key is the name of an attribute and the value is a function that given a data input stream that is positioned directly at the beginning of the attribute, the constant pool, the index of the attribute's name and the parent of the attribute reads in the attribute and returns it.
Registers a new processor for the list of all attributes of a given class file structure (class, field_info, method_info, code_attribute).
Registers a new processor for the list of all attributes of a given class file structure (class, field_info, method_info, code_attribute). This can be used to post-process attributes. E.g., to merge multiple line number tables if they exist or to remove attributes if they are completely resolved.
The implementation of org.opalj.br.reader.UnpackedLineNumberTable_attributeBinding for a concrete example.
Controls whether empty attribute (e.g., a LocalVariableTypeTable with no entries) should be reified or should be dropped.
Controls whether empty attribute (e.g., a LocalVariableTypeTable with no entries) should be reified or should be dropped.
Defines a template method to read in the code attribute.
From the Specification The Code attribute is a variable-length attribute in the attributes table of a method_info structure.