1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.commons.compress.harmony.pack200;
20
21
22
23
24 public class CPMethodOrField extends ConstantPoolEntry implements Comparable {
25
26 private final CPClass className;
27 private final CPNameAndType nameAndType;
28 private int indexInClass = -1;
29 private int indexInClassForConstructor = -1;
30
31 public CPMethodOrField(final CPClass className, final CPNameAndType nameAndType) {
32 this.className = className;
33 this.nameAndType = nameAndType;
34 }
35
36 @Override
37 public int compareTo(final Object obj) {
38 if (obj instanceof CPMethodOrField) {
39 final CPMethodOrField mof = (CPMethodOrField) obj;
40 final int compareName = className.compareTo(mof.className);
41 if (compareName == 0) {
42 return nameAndType.compareTo(mof.nameAndType);
43 }
44 return compareName;
45 }
46 return 0;
47 }
48
49 public int getClassIndex() {
50 return className.getIndex();
51 }
52
53 public CPClass getClassName() {
54 return className;
55 }
56
57 public CPNameAndType getDesc() {
58 return nameAndType;
59 }
60
61 public int getDescIndex() {
62 return nameAndType.getIndex();
63 }
64
65 public int getIndexInClass() {
66 return indexInClass;
67 }
68
69 public int getIndexInClassForConstructor() {
70 return indexInClassForConstructor;
71 }
72
73 public void setIndexInClass(final int index) {
74 indexInClass = index;
75 }
76
77 public void setIndexInClassForConstructor(final int index) {
78 indexInClassForConstructor = index;
79 }
80
81 @Override
82 public String toString() {
83 return className + ": " + nameAndType;
84 }
85
86 }