Package proguard.classfile.constant
Class StringConstant
java.lang.Object
proguard.util.SimpleProcessable
proguard.classfile.constant.Constant
proguard.classfile.constant.StringConstant
- All Implemented Interfaces:
Serializable,Processable
This
Constant represents a string constant in the constant pool.- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionAn extra field pointing to the java.lang.String Clazz object.An extra field pointing to the referenced Clazz object, if this string is being used in Class.forName(), .class, or Class.getDeclaredField/Method constructs.An extra field pointing to the referenced Member object, if this string is being used in Class.getDeclaredField/Method constructs.An extra field pointing to the referenced resource file, if this string references one.intAn extra field pointing to the referenced resource ID, if this string references an Android resource.intFields inherited from class proguard.classfile.constant.Constant
CLASS, DOUBLE, DYNAMIC, FIELDREF, FLOAT, INTEGER, INTERFACE_METHODREF, INVOKE_DYNAMIC, LONG, METHOD_HANDLE, METHOD_TYPE, METHODREF, MODULE, NAME_AND_TYPE, PACKAGE, PRIMITIVE_ARRAY, STRING, UTF8Fields inherited from class proguard.util.SimpleProcessable
processingFlags, processingInfo -
Constructor Summary
ConstructorsConstructorDescriptionCreates an uninitialized StringConstant.StringConstant(int u2stringIndex, Clazz referencedClass, Member referencedMember) Creates a new StringConstant with the given string index.StringConstant(int u2stringIndex, Clazz referencedClass, Member referencedMember, int referencedResourceId, ResourceFile referencedResourceFile) Creates a new StringConstant with the given string index.StringConstant(int u2stringIndex, ResourceFile referencedResourceFile) Creates a new StringConstant with the given string index. -
Method Summary
Modifier and TypeMethodDescriptionvoidaccept(Clazz clazz, ConstantVisitor constantVisitor) Accepts the given visitor.booleanReturns the string value.intgetTag()Returns the constant pool info tag that specifies the entry type.inthashCode()booleanReturns whether the constant is of category 2.voidreferencedClassAccept(ClassVisitor classVisitor) Lets the referenced class accept the given visitor.voidreferencedMemberAccept(MemberVisitor memberVisitor) Lets the referenced member accept the given visitor.voidreferencedResourceFileAccept(ResourceFileVisitor resourceFileVisitor) Lets the referenced resource file accept the given visitor.toString()Methods inherited from class proguard.util.SimpleProcessable
addProcessingFlags, getProcessingFlags, getProcessingInfo, hasProcessingFlags, removeProcessingFlags, setProcessingFlags, setProcessingInfoMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface proguard.util.Processable
accept
-
Field Details
-
u2stringIndex
public int u2stringIndex -
referencedClass
An extra field pointing to the referenced Clazz object, if this string is being used in Class.forName(), .class, or Class.getDeclaredField/Method constructs. This field is typically filled out by theor by theDynamicClassReferenceInitializer.DynamicMemberReferenceInitializer -
referencedMember
An extra field pointing to the referenced Member object, if this string is being used in Class.getDeclaredField/Method constructs. This field is typically filled out by the.DynamicMemberReferenceInitializer -
javaLangStringClass
An extra field pointing to the java.lang.String Clazz object. This field is typically filled out by the..ClassReferenceInitializer -
referencedResourceId
public int referencedResourceIdAn extra field pointing to the referenced resource ID, if this string references an Android resource. Limitation: a String may point to multiple resources with the same name but a different type - only one can be cached. -
referencedResourceFile
An extra field pointing to the referenced resource file, if this string references one.
-
-
Constructor Details
-
StringConstant
public StringConstant()Creates an uninitialized StringConstant. -
StringConstant
Creates a new StringConstant with the given string index.- Parameters:
u2stringIndex- the index of the string in the constant pool.referencedClass- the referenced class, if any.referencedMember- the referenced class member, if any.
-
StringConstant
Creates a new StringConstant with the given string index.- Parameters:
u2stringIndex- the index of the string in the constant pool.referencedResourceFile- the referenced resource filename, if any.
-
StringConstant
public StringConstant(int u2stringIndex, Clazz referencedClass, Member referencedMember, int referencedResourceId, ResourceFile referencedResourceFile) Creates a new StringConstant with the given string index.- Parameters:
u2stringIndex- the index of the string in the constant pool.referencedClass- the referenced class, if any.referencedMember- the referenced class member, if any.referencedResourceId- the referenced resource id, if any, 0 otherwise.referencedResourceFile- the referenced resource filename, if any.
-
-
Method Details
-
getString
Returns the string value. -
getTag
public int getTag()Description copied from class:ConstantReturns the constant pool info tag that specifies the entry type. -
isCategory2
public boolean isCategory2()Description copied from class:ConstantReturns whether the constant is of category 2. This means that it takes up the space of two category 1 types in the constant pool or on the stack, for instance.- Specified by:
isCategory2in classConstant
-
accept
Description copied from class:ConstantAccepts the given visitor. -
referencedClassAccept
Lets the referenced class accept the given visitor. -
referencedMemberAccept
Lets the referenced member accept the given visitor. -
referencedResourceFileAccept
Lets the referenced resource file accept the given visitor. -
equals
-
hashCode
public int hashCode() -
toString
-