author | joehw |
Wed, 26 Jun 2019 05:49:59 +0000 | |
changeset 55496 | 8e0ae3830fca |
parent 47216 | 71c04702a3d5 |
permissions | -rw-r--r-- |
6 | 1 |
/* |
2 |
* reserved comment block |
|
3 |
* DO NOT REMOVE OR ALTER! |
|
4 |
*/ |
|
44797
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
5 |
/* |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
6 |
* Licensed to the Apache Software Foundation (ASF) under one or more |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
7 |
* contributor license agreements. See the NOTICE file distributed with |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
8 |
* this work for additional information regarding copyright ownership. |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
9 |
* The ASF licenses this file to You under the Apache License, Version 2.0 |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
10 |
* (the "License"); you may not use this file except in compliance with |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
11 |
* the License. You may obtain a copy of the License at |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
12 |
* |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
13 |
* http://www.apache.org/licenses/LICENSE-2.0 |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
14 |
* |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
15 |
* Unless required by applicable law or agreed to in writing, software |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
16 |
* distributed under the License is distributed on an "AS IS" BASIS, |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
17 |
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
18 |
* See the License for the specific language governing permissions and |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
19 |
* limitations under the License. |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
20 |
*/ |
8b3b3b911b8a
8162572: Update License Header for all JAXP sources
joehw
parents:
25868
diff
changeset
|
21 |
|
6 | 22 |
package com.sun.org.apache.bcel.internal.generic; |
23 |
||
24 |
/** |
|
25 |
* Interface implementing the Visitor pattern programming style. |
|
26 |
* I.e., a class that implements this interface can handle all types of |
|
27 |
* instructions with the properly typed methods just by calling the accept() |
|
28 |
* method. |
|
29 |
* |
|
55496 | 30 |
* @version $Id$ |
6 | 31 |
*/ |
32 |
public interface Visitor { |
|
46174 | 33 |
|
34 |
void visitStackInstruction( StackInstruction obj ); |
|
35 |
||
36 |
||
37 |
void visitLocalVariableInstruction( LocalVariableInstruction obj ); |
|
38 |
||
39 |
||
40 |
void visitBranchInstruction( BranchInstruction obj ); |
|
41 |
||
42 |
||
43 |
void visitLoadClass( LoadClass obj ); |
|
44 |
||
45 |
||
46 |
void visitFieldInstruction( FieldInstruction obj ); |
|
47 |
||
48 |
||
49 |
void visitIfInstruction( IfInstruction obj ); |
|
50 |
||
51 |
||
52 |
void visitConversionInstruction( ConversionInstruction obj ); |
|
53 |
||
54 |
||
55 |
void visitPopInstruction( PopInstruction obj ); |
|
56 |
||
57 |
||
58 |
void visitStoreInstruction( StoreInstruction obj ); |
|
59 |
||
60 |
||
61 |
void visitTypedInstruction( TypedInstruction obj ); |
|
62 |
||
63 |
||
64 |
void visitSelect( Select obj ); |
|
65 |
||
66 |
||
67 |
void visitJsrInstruction( JsrInstruction obj ); |
|
68 |
||
69 |
||
70 |
void visitGotoInstruction( GotoInstruction obj ); |
|
71 |
||
72 |
||
73 |
void visitUnconditionalBranch( UnconditionalBranch obj ); |
|
74 |
||
75 |
||
76 |
void visitPushInstruction( PushInstruction obj ); |
|
77 |
||
78 |
||
79 |
void visitArithmeticInstruction( ArithmeticInstruction obj ); |
|
80 |
||
81 |
||
82 |
void visitCPInstruction( CPInstruction obj ); |
|
83 |
||
84 |
||
85 |
void visitInvokeInstruction( InvokeInstruction obj ); |
|
86 |
||
87 |
||
88 |
void visitArrayInstruction( ArrayInstruction obj ); |
|
89 |
||
90 |
||
91 |
void visitAllocationInstruction( AllocationInstruction obj ); |
|
92 |
||
93 |
||
94 |
void visitReturnInstruction( ReturnInstruction obj ); |
|
95 |
||
96 |
||
97 |
void visitFieldOrMethod( FieldOrMethod obj ); |
|
98 |
||
99 |
||
100 |
void visitConstantPushInstruction( ConstantPushInstruction obj ); |
|
101 |
||
102 |
||
103 |
void visitExceptionThrower( ExceptionThrower obj ); |
|
104 |
||
105 |
||
106 |
void visitLoadInstruction( LoadInstruction obj ); |
|
107 |
||
108 |
||
109 |
void visitVariableLengthInstruction( VariableLengthInstruction obj ); |
|
110 |
||
111 |
||
112 |
void visitStackProducer( StackProducer obj ); |
|
113 |
||
114 |
||
115 |
void visitStackConsumer( StackConsumer obj ); |
|
116 |
||
117 |
||
118 |
void visitACONST_NULL( ACONST_NULL obj ); |
|
119 |
||
120 |
||
121 |
void visitGETSTATIC( GETSTATIC obj ); |
|
122 |
||
123 |
||
124 |
void visitIF_ICMPLT( IF_ICMPLT obj ); |
|
125 |
||
126 |
||
127 |
void visitMONITOREXIT( MONITOREXIT obj ); |
|
128 |
||
129 |
||
130 |
void visitIFLT( IFLT obj ); |
|
131 |
||
132 |
||
133 |
void visitLSTORE( LSTORE obj ); |
|
134 |
||
135 |
||
136 |
void visitPOP2( POP2 obj ); |
|
137 |
||
138 |
||
139 |
void visitBASTORE( BASTORE obj ); |
|
140 |
||
141 |
||
142 |
void visitISTORE( ISTORE obj ); |
|
143 |
||
144 |
||
145 |
void visitCHECKCAST( CHECKCAST obj ); |
|
146 |
||
147 |
||
148 |
void visitFCMPG( FCMPG obj ); |
|
149 |
||
150 |
||
151 |
void visitI2F( I2F obj ); |
|
152 |
||
153 |
||
154 |
void visitATHROW( ATHROW obj ); |
|
155 |
||
156 |
||
157 |
void visitDCMPL( DCMPL obj ); |
|
158 |
||
159 |
||
160 |
void visitARRAYLENGTH( ARRAYLENGTH obj ); |
|
161 |
||
162 |
||
163 |
void visitDUP( DUP obj ); |
|
164 |
||
165 |
||
166 |
void visitINVOKESTATIC( INVOKESTATIC obj ); |
|
167 |
||
168 |
||
169 |
void visitLCONST( LCONST obj ); |
|
170 |
||
171 |
||
172 |
void visitDREM( DREM obj ); |
|
173 |
||
174 |
||
175 |
void visitIFGE( IFGE obj ); |
|
176 |
||
177 |
||
178 |
void visitCALOAD( CALOAD obj ); |
|
179 |
||
180 |
||
181 |
void visitLASTORE( LASTORE obj ); |
|
182 |
||
183 |
||
184 |
void visitI2D( I2D obj ); |
|
185 |
||
186 |
||
187 |
void visitDADD( DADD obj ); |
|
188 |
||
189 |
||
190 |
void visitINVOKESPECIAL( INVOKESPECIAL obj ); |
|
191 |
||
192 |
||
193 |
void visitIAND( IAND obj ); |
|
194 |
||
195 |
||
196 |
void visitPUTFIELD( PUTFIELD obj ); |
|
197 |
||
198 |
||
199 |
void visitILOAD( ILOAD obj ); |
|
200 |
||
201 |
||
202 |
void visitDLOAD( DLOAD obj ); |
|
203 |
||
204 |
||
205 |
void visitDCONST( DCONST obj ); |
|
206 |
||
207 |
||
208 |
void visitNEW( NEW obj ); |
|
209 |
||
210 |
||
211 |
void visitIFNULL( IFNULL obj ); |
|
212 |
||
213 |
||
214 |
void visitLSUB( LSUB obj ); |
|
215 |
||
216 |
||
217 |
void visitL2I( L2I obj ); |
|
218 |
||
219 |
||
220 |
void visitISHR( ISHR obj ); |
|
221 |
||
222 |
||
223 |
void visitTABLESWITCH( TABLESWITCH obj ); |
|
224 |
||
225 |
||
226 |
void visitIINC( IINC obj ); |
|
227 |
||
228 |
||
229 |
void visitDRETURN( DRETURN obj ); |
|
230 |
||
231 |
||
232 |
void visitFSTORE( FSTORE obj ); |
|
233 |
||
234 |
||
235 |
void visitDASTORE( DASTORE obj ); |
|
236 |
||
237 |
||
238 |
void visitIALOAD( IALOAD obj ); |
|
239 |
||
240 |
||
241 |
void visitDDIV( DDIV obj ); |
|
242 |
||
243 |
||
244 |
void visitIF_ICMPGE( IF_ICMPGE obj ); |
|
245 |
||
246 |
||
247 |
void visitLAND( LAND obj ); |
|
248 |
||
249 |
||
250 |
void visitIDIV( IDIV obj ); |
|
251 |
||
252 |
||
253 |
void visitLOR( LOR obj ); |
|
254 |
||
255 |
||
256 |
void visitCASTORE( CASTORE obj ); |
|
257 |
||
258 |
||
259 |
void visitFREM( FREM obj ); |
|
260 |
||
261 |
||
262 |
void visitLDC( LDC obj ); |
|
263 |
||
264 |
||
265 |
void visitBIPUSH( BIPUSH obj ); |
|
266 |
||
267 |
||
268 |
void visitDSTORE( DSTORE obj ); |
|
269 |
||
270 |
||
271 |
void visitF2L( F2L obj ); |
|
272 |
||
273 |
||
274 |
void visitFMUL( FMUL obj ); |
|
275 |
||
276 |
||
277 |
void visitLLOAD( LLOAD obj ); |
|
278 |
||
279 |
||
280 |
void visitJSR( JSR obj ); |
|
281 |
||
282 |
||
283 |
void visitFSUB( FSUB obj ); |
|
284 |
||
285 |
||
286 |
void visitSASTORE( SASTORE obj ); |
|
287 |
||
288 |
||
289 |
void visitALOAD( ALOAD obj ); |
|
290 |
||
291 |
||
292 |
void visitDUP2_X2( DUP2_X2 obj ); |
|
293 |
||
294 |
||
295 |
void visitRETURN( RETURN obj ); |
|
296 |
||
297 |
||
298 |
void visitDALOAD( DALOAD obj ); |
|
299 |
||
300 |
||
301 |
void visitSIPUSH( SIPUSH obj ); |
|
302 |
||
303 |
||
304 |
void visitDSUB( DSUB obj ); |
|
305 |
||
306 |
||
307 |
void visitL2F( L2F obj ); |
|
308 |
||
309 |
||
310 |
void visitIF_ICMPGT( IF_ICMPGT obj ); |
|
311 |
||
312 |
||
313 |
void visitF2D( F2D obj ); |
|
314 |
||
315 |
||
316 |
void visitI2L( I2L obj ); |
|
317 |
||
318 |
||
319 |
void visitIF_ACMPNE( IF_ACMPNE obj ); |
|
320 |
||
321 |
||
322 |
void visitPOP( POP obj ); |
|
323 |
||
324 |
||
325 |
void visitI2S( I2S obj ); |
|
326 |
||
327 |
||
328 |
void visitIFEQ( IFEQ obj ); |
|
329 |
||
330 |
||
331 |
void visitSWAP( SWAP obj ); |
|
332 |
||
333 |
||
334 |
void visitIOR( IOR obj ); |
|
335 |
||
336 |
||
337 |
void visitIREM( IREM obj ); |
|
338 |
||
339 |
||
340 |
void visitIASTORE( IASTORE obj ); |
|
341 |
||
342 |
||
343 |
void visitNEWARRAY( NEWARRAY obj ); |
|
344 |
||
345 |
||
346 |
void visitINVOKEINTERFACE( INVOKEINTERFACE obj ); |
|
347 |
||
348 |
||
349 |
void visitINEG( INEG obj ); |
|
350 |
||
351 |
||
352 |
void visitLCMP( LCMP obj ); |
|
353 |
||
354 |
||
355 |
void visitJSR_W( JSR_W obj ); |
|
356 |
||
357 |
||
358 |
void visitMULTIANEWARRAY( MULTIANEWARRAY obj ); |
|
359 |
||
360 |
||
361 |
void visitDUP_X2( DUP_X2 obj ); |
|
362 |
||
363 |
||
364 |
void visitSALOAD( SALOAD obj ); |
|
365 |
||
366 |
||
367 |
void visitIFNONNULL( IFNONNULL obj ); |
|
368 |
||
369 |
||
370 |
void visitDMUL( DMUL obj ); |
|
371 |
||
372 |
||
373 |
void visitIFNE( IFNE obj ); |
|
374 |
||
375 |
||
376 |
void visitIF_ICMPLE( IF_ICMPLE obj ); |
|
377 |
||
378 |
||
379 |
void visitLDC2_W( LDC2_W obj ); |
|
380 |
||
381 |
||
382 |
void visitGETFIELD( GETFIELD obj ); |
|
383 |
||
384 |
||
385 |
void visitLADD( LADD obj ); |
|
386 |
||
387 |
||
388 |
void visitNOP( NOP obj ); |
|
389 |
||
390 |
||
391 |
void visitFALOAD( FALOAD obj ); |
|
392 |
||
393 |
||
394 |
void visitINSTANCEOF( INSTANCEOF obj ); |
|
395 |
||
396 |
||
397 |
void visitIFLE( IFLE obj ); |
|
398 |
||
399 |
||
400 |
void visitLXOR( LXOR obj ); |
|
401 |
||
402 |
||
403 |
void visitLRETURN( LRETURN obj ); |
|
404 |
||
405 |
||
406 |
void visitFCONST( FCONST obj ); |
|
407 |
||
408 |
||
409 |
void visitIUSHR( IUSHR obj ); |
|
410 |
||
411 |
||
412 |
void visitBALOAD( BALOAD obj ); |
|
413 |
||
414 |
||
415 |
void visitDUP2( DUP2 obj ); |
|
416 |
||
417 |
||
418 |
void visitIF_ACMPEQ( IF_ACMPEQ obj ); |
|
419 |
||
420 |
||
421 |
void visitIMPDEP1( IMPDEP1 obj ); |
|
422 |
||
423 |
||
424 |
void visitMONITORENTER( MONITORENTER obj ); |
|
425 |
||
426 |
||
427 |
void visitLSHL( LSHL obj ); |
|
428 |
||
429 |
||
430 |
void visitDCMPG( DCMPG obj ); |
|
431 |
||
432 |
||
433 |
void visitD2L( D2L obj ); |
|
434 |
||
435 |
||
436 |
void visitIMPDEP2( IMPDEP2 obj ); |
|
437 |
||
438 |
||
439 |
void visitL2D( L2D obj ); |
|
440 |
||
441 |
||
442 |
void visitRET( RET obj ); |
|
443 |
||
444 |
||
445 |
void visitIFGT( IFGT obj ); |
|
446 |
||
447 |
||
448 |
void visitIXOR( IXOR obj ); |
|
449 |
||
450 |
||
451 |
void visitINVOKEVIRTUAL( INVOKEVIRTUAL obj ); |
|
452 |
||
453 |
||
454 |
/** |
|
455 |
* @since 6.0 |
|
456 |
*/ |
|
457 |
void visitINVOKEDYNAMIC( INVOKEDYNAMIC obj ); |
|
458 |
||
459 |
||
460 |
void visitFASTORE( FASTORE obj ); |
|
461 |
||
462 |
||
463 |
void visitIRETURN( IRETURN obj ); |
|
464 |
||
465 |
||
466 |
void visitIF_ICMPNE( IF_ICMPNE obj ); |
|
467 |
||
468 |
||
469 |
void visitFLOAD( FLOAD obj ); |
|
470 |
||
471 |
||
472 |
void visitLDIV( LDIV obj ); |
|
473 |
||
474 |
||
475 |
void visitPUTSTATIC( PUTSTATIC obj ); |
|
476 |
||
477 |
||
478 |
void visitAALOAD( AALOAD obj ); |
|
479 |
||
480 |
||
481 |
void visitD2I( D2I obj ); |
|
482 |
||
483 |
||
484 |
void visitIF_ICMPEQ( IF_ICMPEQ obj ); |
|
485 |
||
486 |
||
487 |
void visitAASTORE( AASTORE obj ); |
|
488 |
||
489 |
||
490 |
void visitARETURN( ARETURN obj ); |
|
491 |
||
492 |
||
493 |
void visitDUP2_X1( DUP2_X1 obj ); |
|
494 |
||
495 |
||
496 |
void visitFNEG( FNEG obj ); |
|
497 |
||
498 |
||
499 |
void visitGOTO_W( GOTO_W obj ); |
|
500 |
||
501 |
||
502 |
void visitD2F( D2F obj ); |
|
503 |
||
504 |
||
505 |
void visitGOTO( GOTO obj ); |
|
506 |
||
507 |
||
508 |
void visitISUB( ISUB obj ); |
|
509 |
||
510 |
||
511 |
void visitF2I( F2I obj ); |
|
512 |
||
513 |
||
514 |
void visitDNEG( DNEG obj ); |
|
515 |
||
516 |
||
517 |
void visitICONST( ICONST obj ); |
|
518 |
||
519 |
||
520 |
void visitFDIV( FDIV obj ); |
|
521 |
||
522 |
||
523 |
void visitI2B( I2B obj ); |
|
524 |
||
525 |
||
526 |
void visitLNEG( LNEG obj ); |
|
527 |
||
528 |
||
529 |
void visitLREM( LREM obj ); |
|
530 |
||
531 |
||
532 |
void visitIMUL( IMUL obj ); |
|
533 |
||
534 |
||
535 |
void visitIADD( IADD obj ); |
|
536 |
||
537 |
||
538 |
void visitLSHR( LSHR obj ); |
|
539 |
||
540 |
||
541 |
void visitLOOKUPSWITCH( LOOKUPSWITCH obj ); |
|
542 |
||
543 |
||
544 |
void visitDUP_X1( DUP_X1 obj ); |
|
545 |
||
546 |
||
547 |
void visitFCMPL( FCMPL obj ); |
|
548 |
||
549 |
||
550 |
void visitI2C( I2C obj ); |
|
551 |
||
552 |
||
553 |
void visitLMUL( LMUL obj ); |
|
554 |
||
555 |
||
556 |
void visitLUSHR( LUSHR obj ); |
|
557 |
||
558 |
||
559 |
void visitISHL( ISHL obj ); |
|
560 |
||
561 |
||
562 |
void visitLALOAD( LALOAD obj ); |
|
563 |
||
564 |
||
565 |
void visitASTORE( ASTORE obj ); |
|
566 |
||
567 |
||
568 |
void visitANEWARRAY( ANEWARRAY obj ); |
|
569 |
||
570 |
||
571 |
void visitFRETURN( FRETURN obj ); |
|
572 |
||
573 |
||
574 |
void visitFADD( FADD obj ); |
|
575 |
||
576 |
||
577 |
void visitBREAKPOINT( BREAKPOINT obj ); |
|
6 | 578 |
} |