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 public final class StringItem extends Item {
8 @NonNull
9 @SuppressWarnings("NullableProblems")
10 String strVal;
11
12 StringItem() {
13 super(0);
14 strVal = "";
15 }
16
17 public StringItem(@NonNegative int index, int type, @NonNull String strVal) {
18 super(index);
19 set(type, strVal);
20 }
21
22 StringItem(@NonNegative int index, @NonNull StringItem item) {
23 super(index, item);
24 strVal = item.strVal;
25 }
26
27 @NonNull
28 public String getValue() {
29 return strVal;
30 }
31
32
33
34
35 void set(int type, @NonNull String strVal) {
36 this.type = type;
37 this.strVal = strVal;
38 setHashCode(strVal.hashCode());
39 }
40
41 @Override
42 boolean isEqualTo(@NonNull Item item) {
43 return ((StringItem) item).strVal.equals(strVal);
44 }
45 }