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 * ARRAYLENGTH - Get length of array
21 * <PRE>Stack: ..., arrayref -> ..., length</PRE>
22 *
23 * @version $Id: ARRAYLENGTH.java 386056 2006-03-15 11:31:56Z tcurdt $
24 * @author <A HREF="mailto:m.dahm@gmx.de">M. Dahm</A>
25 */
26 public class ARRAYLENGTH extends Instruction implements ExceptionThrower, StackProducer {
27
28 /*** Get length of array
29 */
30 public ARRAYLENGTH() {
31 super(org.apache.bcel.Constants.ARRAYLENGTH, (short) 1);
32 }
33
34
35 /*** @return exceptions this instruction may cause
36 */
37 public Class[] getExceptions() {
38 return new Class[] {
39 org.apache.bcel.ExceptionConstants.NULL_POINTER_EXCEPTION
40 };
41 }
42
43
44 /***
45 * Call corresponding visitor method(s). The order is:
46 * Call visitor methods of implemented interfaces first, then
47 * call methods according to the class hierarchy in descending order,
48 * i.e., the most specific visitXXX() call comes last.
49 *
50 * @param v Visitor object
51 */
52 public void accept( Visitor v ) {
53 v.visitExceptionThrower(this);
54 v.visitStackProducer(this);
55 v.visitARRAYLENGTH(this);
56 }
57 }