01: /*
02: * Copyright 2000-2004 The Apache Software Foundation
03: *
04: * Licensed under the Apache License, Version 2.0 (the "License");
05: * you may not use this file except in compliance with the License.
06: * You may obtain a copy of the License at
07: *
08: * http://www.apache.org/licenses/LICENSE-2.0
09: *
10: * Unless required by applicable law or agreed to in writing, software
11: * distributed under the License is distributed on an "AS IS" BASIS,
12: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13: * See the License for the specific language governing permissions and
14: * limitations under the License.
15: *
16: */
17: package org.apache.bcel.generic;
18:
19: import java.io.IOException;
20: import org.apache.bcel.util.ByteSequence;
21:
22: /**
23: * LDC_W - Push item from constant pool (wide index)
24: *
25: * <PRE>Stack: ... -> ..., item.word1, item.word2</PRE>
26: *
27: * @version $Id: LDC_W.java 386056 2006-03-15 11:31:56Z tcurdt $
28: * @author <A HREF="mailto:m.dahm@gmx.de">M. Dahm</A>
29: */
30: public class LDC_W extends LDC {
31:
32: /**
33: * Empty constructor needed for the Class.newInstance() statement in
34: * Instruction.readInstruction(). Not to be used otherwise.
35: */
36: LDC_W() {
37: }
38:
39: public LDC_W(int index) {
40: super (index);
41: }
42:
43: /**
44: * Read needed data (i.e., index) from file.
45: */
46: protected void initFromFile(ByteSequence bytes, boolean wide)
47: throws IOException {
48: setIndex(bytes.readUnsignedShort());
49: // Override just in case it has been changed
50: opcode = org.apache.bcel.Constants.LDC_W;
51: length = 3;
52: }
53: }
|