View Javadoc
1   package mockit.asm.constantPool;
2   
3   import edu.umd.cs.findbugs.annotations.NonNull;
4   
5   import org.checkerframework.checker.index.qual.NonNegative;
6   
7   abstract class TypeTableItem extends Item {
8       /**
9        * Defines constants for {@link #NORMAL normal}, {@link #UNINIT uninitialized}, and {@link #MERGED merged} special
10       * item types stored in the {@linkplain ConstantPoolGeneration#typeTable constant pool's type table}, instead of the
11       * constant pool, in order to avoid clashes with normal constant pool items in the
12       * {@linkplain ConstantPoolGeneration#items constant pool's hash table}.
13       */
14      interface SpecialType {
15          int NORMAL = 30;
16          int UNINIT = 31;
17          int MERGED = 32;
18      }
19  
20      @NonNull
21      String typeDesc;
22  
23      TypeTableItem() {
24          super(0);
25          typeDesc = "";
26      }
27  
28      TypeTableItem(@NonNegative int index, @NonNull TypeTableItem item) {
29          super(index, item);
30          typeDesc = item.typeDesc;
31      }
32  }