OT Bytecode Attributes/OTSpecialAccess
This attribute combines information about several situations where accessing one element across classes requires special treatment:
- decapsulation (base method accessed by role) => OTRE removes protection
- callout-to-field (base field accessed by role) => OTRE adds setter/getter
- base-class access -- two situations
- base-class decapsulation (role accesses invisible base-class) => OTRE removes protection
- super-base-class access (team adapts a super of a declared base-class)
The items of the OTSpecialAccess structure are as follows:
- The constant_pool entry at that index must be a CONSTANT_Utf8_info representing the string "CallinRoleBaseBindings".
- The value of the attribute_length item indicates the length of the attribute, excluding the initial six bytes.