public static class OpcodeStack.Item
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static interface |
OpcodeStack.Item.SpecialKind |
Modifier and Type | Field and Description |
---|---|
static int |
AVERAGE_COMPUTED_USING_DIVISION |
static int |
FILE_OPENED_IN_APPEND_MODE |
static int |
FILE_SEPARATOR_STRING |
static int |
FLOAT_MATH |
static int |
HASHCODE_INT |
static int |
HASHCODE_INT_REMAINDER |
static int |
INTEGER_SUM |
static int |
LOW_8_BITS_CLEAR |
static int |
MATH_ABS |
static int |
MATH_ABS_OF_HASHCODE |
static int |
MATH_ABS_OF_RANDOM |
static int |
NASTY_FLOAT_MATH |
static int |
NEWLY_ALLOCATED |
static int |
NON_NEGATIVE |
static int |
NONZERO_MEANS_NULL |
static int |
NOT_SPECIAL |
static int |
RANDOM_INT |
static int |
RANDOM_INT_REMAINDER |
static int |
RESULT_OF_I2L |
static int |
RESULT_OF_L2I |
static int |
SERVLET_OUTPUT |
static int |
SERVLET_REQUEST_TAINTED |
static int |
SIGNED_BYTE |
static java.util.HashMap<java.lang.Integer,java.lang.String> |
specialKindNames |
static int |
TYPE_ONLY |
static java.lang.Object |
UNKNOWN |
static int |
ZERO_MEANS_NULL |
Constructor and Description |
---|
OpcodeStack.Item() |
OpcodeStack.Item(OpcodeStack.Item it) |
OpcodeStack.Item(OpcodeStack.Item it,
int reg) |
OpcodeStack.Item(OpcodeStack.Item it,
java.lang.String signature) |
OpcodeStack.Item(java.lang.String signature) |
OpcodeStack.Item(java.lang.String signature,
FieldAnnotation f) |
OpcodeStack.Item(java.lang.String signature,
FieldAnnotation f,
int fieldLoadedFromRegister) |
OpcodeStack.Item(java.lang.String signature,
int constValue) |
OpcodeStack.Item(java.lang.String signature,
java.lang.Object constantValue) |
Modifier and Type | Method and Description |
---|---|
boolean |
checkForIntegerMinValue()
Value could be Integer.MIN_VALUE
|
void |
clearNewlyAllocated() |
OpcodeStack.Item |
cloneAndSetSpecialKind(int specialKind) |
boolean |
couldBeZero() |
static int |
defineNewSpecialKind(java.lang.String name) |
boolean |
equals(java.lang.Object o) |
java.lang.Object |
getConstant()
Returns a constant value for this Item, if known.
|
java.lang.String |
getElementSignature()
Deprecated.
|
FieldAnnotation |
getFieldAnnotation()
Deprecated.
|
int |
getFieldLoadedFromRegister()
If this value was loaded from an instance field,
give the register number containing the object that the field was loaded from.
|
java.lang.String |
getHttpParameterName() |
int |
getInjectionPC() |
org.apache.bcel.classfile.JavaClass |
getJavaClass()
Returns null for primitive and arrays
|
int |
getPC() |
int |
getRegisterNumber() |
XMethod |
getReturnValueOf() |
java.lang.String |
getSignature() |
int |
getSize() |
int |
getSpecialKind() |
int |
getSpecialKindForAbs() |
int |
getSpecialKindForRemainder() |
java.lang.Object |
getUserValue()
gets the detector specified value for this item
|
XField |
getXField() |
boolean |
hasConstantValue(int value) |
boolean |
hasConstantValue(long value) |
int |
hashCode() |
static OpcodeStack.Item |
initialArgument(java.lang.String signature,
int reg) |
boolean |
isArray() |
boolean |
isBooleanNullnessValue() |
boolean |
isInitialParameter() |
boolean |
isNewlyAllocated() |
boolean |
isNonNegative() |
boolean |
isNull() |
boolean |
isPrimitive() |
boolean |
isServletParameterTainted() |
boolean |
isServletWriter() |
boolean |
isWide() |
void |
makeCrossMethod() |
static OpcodeStack.Item |
merge(OpcodeStack.Item i1,
OpcodeStack.Item i2) |
boolean |
mightRarelyBeNegative()
The result of applying Math.abs to a checkForIntegerMinValue() value
|
boolean |
mustBeZero() |
static OpcodeStack.Item |
nullItem(java.lang.String signature) |
boolean |
sameValue(OpcodeStack.Item that) |
void |
setCouldBeNegative() |
void |
setIsServletWriter() |
void |
setLoadedFromField(XField f,
int fieldLoadedFromRegister) |
void |
setPC(int pc) |
void |
setServletParameterTainted() |
void |
setSpecialKind(int specialKind) |
void |
setUserValue(java.lang.Object value)
attaches a detector specified value to this item
|
java.lang.String |
toString() |
static OpcodeStack.Item |
typeOnly(java.lang.String signature) |
boolean |
usesTwoSlots() |
boolean |
valueCouldBeNegative() |
@OpcodeStack.Item.SpecialKind public static final int NOT_SPECIAL
@OpcodeStack.Item.SpecialKind public static final int SIGNED_BYTE
@OpcodeStack.Item.SpecialKind public static final int RANDOM_INT
@OpcodeStack.Item.SpecialKind public static final int LOW_8_BITS_CLEAR
@OpcodeStack.Item.SpecialKind public static final int HASHCODE_INT
@OpcodeStack.Item.SpecialKind public static final int INTEGER_SUM
@OpcodeStack.Item.SpecialKind public static final int AVERAGE_COMPUTED_USING_DIVISION
@OpcodeStack.Item.SpecialKind public static final int FLOAT_MATH
@OpcodeStack.Item.SpecialKind public static final int RANDOM_INT_REMAINDER
@OpcodeStack.Item.SpecialKind public static final int HASHCODE_INT_REMAINDER
@OpcodeStack.Item.SpecialKind public static final int FILE_SEPARATOR_STRING
@OpcodeStack.Item.SpecialKind public static final int MATH_ABS
@OpcodeStack.Item.SpecialKind public static final int MATH_ABS_OF_RANDOM
@OpcodeStack.Item.SpecialKind public static final int MATH_ABS_OF_HASHCODE
@OpcodeStack.Item.SpecialKind public static final int NON_NEGATIVE
@OpcodeStack.Item.SpecialKind public static final int NASTY_FLOAT_MATH
@OpcodeStack.Item.SpecialKind public static final int FILE_OPENED_IN_APPEND_MODE
@OpcodeStack.Item.SpecialKind public static final int SERVLET_REQUEST_TAINTED
@OpcodeStack.Item.SpecialKind public static final int NEWLY_ALLOCATED
@OpcodeStack.Item.SpecialKind public static final int ZERO_MEANS_NULL
@OpcodeStack.Item.SpecialKind public static final int NONZERO_MEANS_NULL
@OpcodeStack.Item.SpecialKind public static final int RESULT_OF_I2L
@OpcodeStack.Item.SpecialKind public static final int RESULT_OF_L2I
@OpcodeStack.Item.SpecialKind public static final int SERVLET_OUTPUT
@OpcodeStack.Item.SpecialKind public static final int TYPE_ONLY
@StaticConstant public static final java.util.HashMap<java.lang.Integer,java.lang.String> specialKindNames
public static final java.lang.Object UNKNOWN
public OpcodeStack.Item(java.lang.String signature, int constValue)
public OpcodeStack.Item(java.lang.String signature)
public OpcodeStack.Item(OpcodeStack.Item it)
public OpcodeStack.Item(OpcodeStack.Item it, java.lang.String signature)
public OpcodeStack.Item(OpcodeStack.Item it, int reg)
public OpcodeStack.Item(java.lang.String signature, FieldAnnotation f)
public OpcodeStack.Item(java.lang.String signature, FieldAnnotation f, int fieldLoadedFromRegister)
public OpcodeStack.Item(java.lang.String signature, java.lang.Object constantValue)
public OpcodeStack.Item()
@OpcodeStack.Item.SpecialKind public static int defineNewSpecialKind(java.lang.String name)
public void makeCrossMethod()
public int getSize()
public int getPC()
public void setPC(int pc)
public boolean isWide()
public int hashCode()
hashCode
in class java.lang.Object
public boolean usesTwoSlots()
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public boolean sameValue(OpcodeStack.Item that)
public java.lang.String toString()
toString
in class java.lang.Object
public static OpcodeStack.Item merge(OpcodeStack.Item i1, OpcodeStack.Item i2)
public static OpcodeStack.Item initialArgument(java.lang.String signature, int reg)
public static OpcodeStack.Item typeOnly(java.lang.String signature)
public int getFieldLoadedFromRegister()
public void setLoadedFromField(XField f, int fieldLoadedFromRegister)
@CheckForNull public java.lang.String getHttpParameterName()
public int getInjectionPC()
public void setCouldBeNegative()
public static OpcodeStack.Item nullItem(java.lang.String signature)
@CheckForNull public org.apache.bcel.classfile.JavaClass getJavaClass() throws java.lang.ClassNotFoundException
java.lang.ClassNotFoundException
public boolean isArray()
@Deprecated public java.lang.String getElementSignature()
public boolean isNonNegative()
public boolean isPrimitive()
public int getRegisterNumber()
public java.lang.String getSignature()
public java.lang.Object getConstant()
@Deprecated public FieldAnnotation getFieldAnnotation()
public XField getXField()
public void setSpecialKind(@OpcodeStack.Item.SpecialKind int specialKind)
specialKind
- The specialKind to set.public OpcodeStack.Item cloneAndSetSpecialKind(@OpcodeStack.Item.SpecialKind int specialKind)
@OpcodeStack.Item.SpecialKind public int getSpecialKind()
public boolean isBooleanNullnessValue()
public void setUserValue(@Nullable java.lang.Object value)
attaches a detector specified value to this item
to use this method, detector should be annotated with CustomUserValue
.
value
- the custom value to setOpcodeStack.CustomUserValue
@CheckForNull public XMethod getReturnValueOf()
public boolean couldBeZero()
public boolean mustBeZero()
@Nullable public java.lang.Object getUserValue()
public boolean isServletParameterTainted()
public void setServletParameterTainted()
public void setIsServletWriter()
public boolean isServletWriter()
public boolean valueCouldBeNegative()
@OpcodeStack.Item.SpecialKind public int getSpecialKindForAbs()
@OpcodeStack.Item.SpecialKind public int getSpecialKindForRemainder()
public boolean checkForIntegerMinValue()
public boolean mightRarelyBeNegative()
public boolean isInitialParameter()
public boolean isNull()
public void clearNewlyAllocated()
public boolean isNewlyAllocated()
public boolean hasConstantValue(int value)
public boolean hasConstantValue(long value)
FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.