src/share/classes/com/sun/tools/javap/CodeWriter.java

changeset 354
cba827f72977
parent 348
743f17b55b44
child 355
961dc3acdb06
equal deleted inserted replaced
353:3e38c6da72ec 354:cba827f72977
138 print((instr.getPC() + offset)); 138 print((instr.getPC() + offset));
139 return null; 139 return null;
140 } 140 }
141 141
142 public Void visitConstantPoolRef(Instruction instr, int index, Void p) { 142 public Void visitConstantPoolRef(Instruction instr, int index, Void p) {
143 print("#" + index + ";"); 143 print("#" + index);
144 tab(); 144 tab();
145 print("// "); 145 print("// ");
146 printConstant(index); 146 printConstant(index);
147 return null; 147 return null;
148 } 148 }
149 149
150 public Void visitConstantPoolRefAndValue(Instruction instr, int index, int value, Void p) { 150 public Void visitConstantPoolRefAndValue(Instruction instr, int index, int value, Void p) {
151 print("#" + index + ", " + value + ";"); 151 print("#" + index + ", " + value);
152 tab(); 152 tab();
153 print("// "); 153 print("// ");
154 printConstant(index); 154 printConstant(index);
155 return null; 155 return null;
156 } 156 }
168 public Void visitLookupSwitch(Instruction instr, int default_, int npairs, int[] matches, int[] offsets) { 168 public Void visitLookupSwitch(Instruction instr, int default_, int npairs, int[] matches, int[] offsets) {
169 int pc = instr.getPC(); 169 int pc = instr.getPC();
170 print("{ // " + npairs); 170 print("{ // " + npairs);
171 indent(+1); 171 indent(+1);
172 for (int i = 0; i < npairs; i++) { 172 for (int i = 0; i < npairs; i++) {
173 print("\n" + matches[i] + ": " + (pc + offsets[i]) + ";"); 173 print("\n" + matches[i] + ": " + (pc + offsets[i]));
174 } 174 }
175 print("\ndefault: " + (pc + default_) + " }"); 175 print("\ndefault: " + (pc + default_) + " }");
176 indent(-1); 176 indent(-1);
177 return null; 177 return null;
178 } 178 }
180 public Void visitTableSwitch(Instruction instr, int default_, int low, int high, int[] offsets) { 180 public Void visitTableSwitch(Instruction instr, int default_, int low, int high, int[] offsets) {
181 int pc = instr.getPC(); 181 int pc = instr.getPC();
182 print("{ //" + low + " to " + high); 182 print("{ //" + low + " to " + high);
183 indent(+1); 183 indent(+1);
184 for (int i = 0; i < offsets.length; i++) { 184 for (int i = 0; i < offsets.length; i++) {
185 print("\n" + (low + i) + ": " + (pc + offsets[i]) + ";"); 185 print("\n" + (low + i) + ": " + (pc + offsets[i]));
186 } 186 }
187 print("\ndefault: " + (pc + default_) + " }"); 187 print("\ndefault: " + (pc + default_) + " }");
188 indent(-1); 188 indent(-1);
189 return null; 189 return null;
190 } 190 }

mercurial