Class LDC
java.lang.Object
org.apache.bcel.generic.Instruction
org.apache.bcel.generic.CPInstruction
org.apache.bcel.generic.LDC
- All Implemented Interfaces:
Cloneable, ExceptionThrower, IndexedInstruction, PushInstruction, StackProducer, TypedInstruction
- Direct Known Subclasses:
LDC_W
LDC - Push item from constant pool.
Stack: ... -> ..., item
-
Field Summary
Fields inherited from class CPInstruction
indexModifier and TypeFieldDescriptionprotected intDeprecated.(since 6.0) will be made private; do not access directly, use getter/setterFields inherited from class Instruction
length, opcode -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidCall corresponding visitor method(s).voiddump(DataOutputStream out) Dumps instruction as byte code to stream out.Class<?>[]Gets the exceptions that may be thrown by this instruction.getType(ConstantPoolGen cpg) Gets the type associated with this instruction.getValue(ConstantPoolGen cpg) Gets the constant value from the constant pool.protected voidinitFromFile(ByteSequence bytes, boolean wide) Reads needed data (for example index) from file.final voidsetIndex(int index) Sets the index to constant pool and adjust size.protected final voidsetSize()Sets the opcode and length to accommodate the constant pool index.Methods inherited from class CPInstruction
getIndex, toString, toStringModifier and TypeMethodDescriptionfinal intgetIndex()Gets the constant pool index referred to by this instruction.toString(boolean verbose) Long output format: <name of opcode> "["<opcode number>"]" "("<length of instruction>")" "<"< constant pool index>">"toString(ConstantPool cp) Gets the mnemonic for instruction with symbolic references resolved.Methods inherited from class Instruction
consumeStack, copy, equals, getComparator, getLength, getName, getOpcode, hashCode, isValidByte, isValidShort, produceStack, readInstruction, setComparator, toStringModifier and TypeMethodDescriptionintThis method also gives right results for instructions whose effect on the stack depends on the constant pool entry they reference.copy()Use with caution, since 'BranchInstruction's have a 'target' reference which is not copied correctly (only basic types are).booleanTests for equality, delegated to comparatorstatic InstructionComparatorDeprecated.(6.0) use the built in comparator, or wrap this class in another object that implements these methodsintGets the length (in bytes) of instruction.getName()Gets the name of instruction, that is, opcode name.shortGets this instruction's opcode.inthashCode()Gets the hashCode of this object.static booleanisValidByte(int value) Tests if the value can fit in a byte (signed).static booleanisValidShort(int value) Tests if the value can fit in a short (signed).intThis method also gives right results for instructions whose effect on the stack depends on the constant pool entry they reference.static InstructionreadInstruction(ByteSequence bytes) Reads an instruction from (byte code) input stream and return the appropriate object.static voidDeprecated.(6.0) use the built in comparator, or wrap this class in another object that implements these methodstoString()Methods inherited from interface StackProducer
produceStackModifier and TypeMethodDescriptionintGets how many words are produced on stack.
-
Constructor Details
-
LDC
-
-
Method Details
-
accept
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
Dumps instruction as byte code to stream out.- Overrides:
dumpin classCPInstruction- Parameters:
out- Output stream.- Throws:
IOException- Thrown when an I/O exception of some sort has occurred.
-
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
Description copied from class:CPInstructionGets 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
Gets the constant value from the constant pool.- Parameters:
cpg- constant pool generator.- Returns:
- The constant value.
-
initFromFile
Reads needed data (for example index) from file.- Overrides:
initFromFilein classCPInstruction- Parameters:
bytes- input stream.wide- wide prefix?.- Throws:
IOException- Thrown if the implementation needs to read data from the file
-
setIndex
Sets the index to constant pool and adjust size.- Specified by:
setIndexin interfaceIndexedInstruction- Overrides:
setIndexin classCPInstruction- Parameters:
index- in constant pool.
-
setSize
Sets the opcode and length to accommodate the constant pool index.
-