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