Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "OT Bytecode Attributes/OTClassFlags"
(New page: =Attribute OTClassFlags= ===Intent=== ===Location:=== A team class or a role type. ===Content:=== An integer encoding the OT specific class flags (see Format). ===Purpose:=== ===For...) |
(→Attribute OTClassFlags) |
||
Line 2: | Line 2: | ||
===Intent=== | ===Intent=== | ||
− | + | The OTClassFlags attribute is used to store various properties of OT classes. | |
===Location:=== | ===Location:=== | ||
Line 14: | Line 14: | ||
===Format:=== | ===Format:=== | ||
− | <pre> </pre> | + | <pre> CallinFlags { |
+ | u2 attribute_name_index; | ||
+ | u4 attribute_length; | ||
+ | u2 class_flags; | ||
+ | }</pre> | ||
The items of the OTClassFlags structure are as follows: | The items of the OTClassFlags structure are as follows: | ||
Line 21: | Line 25: | ||
*attribute_length | *attribute_length | ||
:The value of the attribute_length item indicates the length of the attribute, excluding the initial six bytes. | :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: | ||
Line 27: | Line 32: | ||
{| cellpadding="5" border="1" | {| cellpadding="5" border="1" | ||
|- | |- | ||
− | ! Flag Name | + | ! Flag Name !! Value !! Interpretation |
|- | |- | ||
− | | OT_CLASS_TEAM | + | | OT_CLASS_TEAM || <tt>1</tt> || this class is a team |
|- | |- | ||
− | | OT_CLASS_ROLE | + | | OT_CLASS_ROLE || <tt>2</tt> || this class is a role |
|- | |- | ||
− | | OT_CLASS_ROLE_LOCAL | + | | OT_CLASS_ROLE_LOCAL || <tt>4</tt> || TODO |
|- | |- | ||
− | | OT_CLASS_PURELY_COPIED || <tt>8</tt> | + | | OT_CLASS_PURELY_COPIED || <tt>8</tt> || no source present for this class |
|- | |- | ||
− | | OT_CLASS_ROLE_FILE | + | | OT_CLASS_ROLE_FILE || <tt>16</tt> || TODO |
|- | |- | ||
− | | OT_CLASS_FLAG_HAS_TSUPER | + | | OT_CLASS_FLAG_HAS_TSUPER || <tt>32</tt> || TODO |
|- | |- | ||
− | | OT_CLASS_CONFINED | + | | OT_CLASS_CONFINED || <tt>64</tt> || superclass Object should be updated to __OT__Confined on loading |
|} | |} | ||
[[Category:Object Teams Development]] | [[Category:Object Teams Development]] |
Revision as of 07:48, 26 April 2010
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 | TODO |
OT_CLASS_PURELY_COPIED | 8 | no source present for this class |
OT_CLASS_ROLE_FILE | 16 | TODO |
OT_CLASS_FLAG_HAS_TSUPER | 32 | TODO |
OT_CLASS_CONFINED | 64 | superclass Object should be updated to __OT__Confined on loading |