KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > eclipse > jdt > core > util > IVerificationTypeInfo


1 /*******************************************************************************
2  * Copyright (c) 2000, 2006 IBM Corporation and others.
3  * All rights reserved. This program and the accompanying materials
4  * are made available under the terms of the Eclipse Public License v1.0
5  * which accompanies this distribution, and is available at
6  * http://www.eclipse.org/legal/epl-v10.html
7  *
8  * Contributors:
9  * IBM Corporation - initial API and implementation
10  *******************************************************************************/

11 package org.eclipse.jdt.core.util;
12
13 /**
14  * Description of a verification type info as described in the JVM specifications.
15  *
16  * This interface may be implemented by clients.
17  *
18  * @since 3.0
19  */

20 public interface IVerificationTypeInfo {
21     /**
22      * The tag value representing top variable info
23      * @since 3.2
24      */

25     public static final int ITEM_TOP = 0;
26     /**
27      * The tag value representing integer variable info
28      * @since 3.2
29      */

30     public static final int ITEM_INTEGER = 1;
31     /**
32      * The tag value representing float variable info
33      * @since 3.2
34      */

35     public static final int ITEM_FLOAT = 2;
36     /**
37      * The tag value representing double variable info
38      * @since 3.2
39      */

40     public static final int ITEM_DOUBLE = 3;
41     /**
42      * The tag value representing long variable info
43      * @since 3.2
44      */

45     public static final int ITEM_LONG = 4;
46     /**
47      * The tag value representing null variable info
48      * @since 3.2
49      */

50     public static final int ITEM_NULL = 5;
51     /**
52      * The tag value representing uninitialized this variable info
53      * @since 3.2
54      */

55     public static final int ITEM_UNINITIALIZED_THIS = 6;
56     /**
57      * The tag value representing object variable info
58      * @since 3.2
59      */

60     public static final int ITEM_OBJECT = 7;
61     /**
62      * The tag value representing uninitialized variable info
63      * @since 3.2
64      */

65     public static final int ITEM_UNINITIALIZED = 8;
66     
67     /**
68      * Answer back the tag of this verification type info as described in the JVM specifications.
69      * <ul>
70      * <li>0 for the top type</li>
71      * <li>1 for the int type</li>
72      * <li>2 for the float type</li>
73      * <li>3 for the double type</li>
74      * <li>4 for the long type</li>
75      * <li>5 for the null type</li>
76      * <li>6 for the uninitialized this type</li>
77      * <li>7 for the object type</li>
78      * <li>8 for the uninitialized offset type</li>
79      * </ul>
80      *
81      * @return the tag of this verification type info as described in the JVM specifications
82      * @since 3.0
83      */

84     int getTag();
85     
86     /**
87      * Answer back the offset of this verification type info as described in the JVM specifications.
88      * This makes sense only if the tag is 8.
89      *
90      * @return the offset of this verification type info as described in the JVM specifications
91      * @since 3.0
92      */

93     int getOffset();
94     
95     /**
96      * Answer back the constant pool index of this verification type info as described in the JVM specifications.
97      * This makes sense only if the tag is 7.
98      *
99      * @return the constant pool index of this verification type info as described in the JVM specifications
100      * @since 3.0
101      */

102     int getConstantPoolIndex();
103     
104     /**
105      * Answer back the name of the class type referenced by the index in the constant pool
106      * as described in the JVM specifications.
107      * This makes sense only if the tag is 7.
108      *
109      * @return the name of the class type referenced by the index in the constant pool
110      * as described in the JVM specifications
111      * @since 3.0
112      */

113     char[] getClassTypeName();
114 }
115
Popular Tags