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 }