Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
OT Bytecode Attributes/OTClassFlags
Attribute OTClassFlags
Intent
The OTClassFlags attribute is used to store various properties of OT classes.
Location:
A team class or a role type.
Content:
An integer encoding the OT specific class flags (see Format).
Purpose:
Format:
CallinFlags { u2 attribute_name_index; u4 attribute_length; u2 class_flags; }
The items of the OTClassFlags structure are as follows:
- attribute_name_index
- The constant_pool entry at that index must be a CONSTANT_Utf8_info representing the string "CallinRoleBaseBindings".
- attribute_length
- The value of the attribute_length item indicates the length of the attribute, excluding the initial six bytes.
- class_flags
- The value of the class_flags item is a mask of flags. The interpretation of each flag, when set, is as shown in the following:
Flag Name | Value | Interpretation |
---|---|---|
OT_CLASS_TEAM | 1 | this class is a team |
OT_CLASS_ROLE | 2 | this class is a role |
OT_CLASS_ROLE_LOCAL | 4 | this is a local class nested within a role |
OT_CLASS_PURELY_COPIED | 8 | no source present for this class |
OT_CLASS_ROLE_FILE | 16 | this role was compiled from a separate source file ("role file") |
OT_CLASS_FLAG_HAS_TSUPER | 32 | this role overrides a role from the super team |
OT_CLASS_CONFINED | 64 | superclass Object should be updated to __OT__Confined on loading |