Package org.apache.bcel.generic
Class LDC
- java.lang.Object
-
- org.apache.bcel.generic.Instruction
-
- org.apache.bcel.generic.CPInstruction
-
- org.apache.bcel.generic.LDC
-
- All Implemented Interfaces:
java.lang.Cloneable,ExceptionThrower,IndexedInstruction,PushInstruction,StackProducer,TypedInstruction
- Direct Known Subclasses:
LDC_W
public class LDC extends CPInstruction implements PushInstruction, ExceptionThrower
LDC - Push item from constant pool.Stack: ... -> ..., item
-
-
Field Summary
-
Fields inherited from class org.apache.bcel.generic.CPInstruction
index
-
Fields inherited from class org.apache.bcel.generic.Instruction
length, opcode
-
-
Constructor Summary
Constructors Constructor Description LDC(int index)Constructs an LDC instruction.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaccept(Visitor v)Call corresponding visitor method(s).voiddump(java.io.DataOutputStream out)Dumps instruction as byte code to stream out.java.lang.Class<?>[]getExceptions()Gets the exceptions that may be thrown by this instruction.TypegetType(ConstantPoolGen cpg)Gets the type associated with this instruction.java.lang.ObjectgetValue(ConstantPoolGen cpg)Gets the constant value from the constant pool.protected voidinitFromFile(ByteSequence bytes, boolean wide)Reads needed data (for example index) from file.voidsetIndex(int index)Sets the index to constant pool and adjust size.protected voidsetSize()Adjusts to proper size.-
Methods inherited from class org.apache.bcel.generic.CPInstruction
getIndex, toString, toString
-
Methods inherited from class org.apache.bcel.generic.Instruction
consumeStack, copy, equals, getComparator, getLength, getName, getOpcode, hashCode, isValidByte, isValidShort, produceStack, readInstruction, setComparator, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.bcel.generic.StackProducer
produceStack
-
-
-
-
Constructor Detail
-
LDC
public LDC(int index)
Constructs an LDC instruction.- Parameters:
index- index into constant pool.
-
-
Method Detail
-
accept
public void accept(Visitor v)
Call corresponding visitor method(s). The order is: Call visitor methods of implemented interfaces first, then call methods according to the class hierarchy in descending order, that is, the most specific visitXXX() call comes last.- Specified by:
acceptin classInstruction- Parameters:
v- Visitor object.
-
dump
public void dump(java.io.DataOutputStream out) throws java.io.IOException
Dumps instruction as byte code to stream out.- Overrides:
dumpin classCPInstruction- Parameters:
out- Output stream.- Throws:
java.io.IOException- Thrown when an I/O exception of some sort has occurred.
-
getExceptions
public java.lang.Class<?>[] getExceptions()
Description copied from interface:ExceptionThrowerGets the exceptions that may be thrown by this instruction.- Specified by:
getExceptionsin interfaceExceptionThrower- Returns:
- The exceptions that may be thrown by this instruction.
-
getType
public Type getType(ConstantPoolGen cpg)
Description copied from interface:TypedInstructionGets the type associated with this instruction.- Specified by:
getTypein interfaceTypedInstruction- Overrides:
getTypein classCPInstruction- Parameters:
cpg- The constant pool generator.- Returns:
- type related with this instruction.
-
getValue
public java.lang.Object getValue(ConstantPoolGen cpg)
Gets the constant value from the constant pool.- Parameters:
cpg- constant pool generator.- Returns:
- The constant value.
-
initFromFile
protected void initFromFile(ByteSequence bytes, boolean wide) throws java.io.IOException
Reads needed data (for example index) from file.- Overrides:
initFromFilein classCPInstruction- Parameters:
bytes- input stream.wide- wide prefix?.- Throws:
java.io.IOException- Thrown if the implementation needs to read data from the file
-
setIndex
public final void setIndex(int index)
Sets the index to constant pool and adjust size.- Specified by:
setIndexin interfaceIndexedInstruction- Overrides:
setIndexin classCPInstruction- Parameters:
index- in constant pool.
-
setSize
protected final void setSize()
Adjusts to proper size.
-
-