Package proguard.util
Interface Processable
-
- All Superinterfaces:
java.io.Serializable
- All Known Implementing Classes:
Annotation,AnnotationDefaultAttribute,AnnotationElementValue,AnnotationsAttribute,AnyMethodrefConstant,ArrayElementValue,Attribute,BootstrapMethodInfo,BootstrapMethodsAttribute,ClassConstant,ClassElementValue,CodeAttribute,Constant,ConstantElementValue,ConstantValueAttribute,DeprecatedAttribute,DoubleConstant,DoubleType,DynamicConstant,ElementValue,EnclosingMethodAttribute,EnumConstantElementValue,ExceptionInfo,ExceptionsAttribute,ExportsInfo,FieldrefConstant,FloatConstant,FloatType,FullFrame,InnerClassesAttribute,InnerClassesInfo,IntegerConstant,IntegerType,InterfaceMethodrefConstant,InvokeDynamicConstant,KotlinAnnotation,KotlinAnnotationArgument,KotlinClassKindMetadata,KotlinConstructorMetadata,KotlinContractMetadata,KotlinDeclarationContainerMetadata,KotlinEffectExpressionMetadata,KotlinEffectMetadata,KotlinEnumEntryMetadata,KotlinFileFacadeKindMetadata,KotlinFunctionMetadata,KotlinMetadata,KotlinModule,KotlinMultiFileFacadeKindMetadata,KotlinMultiFilePartKindMetadata,KotlinPropertyAccessorMetadata,KotlinPropertyMetadata,KotlinSyntheticClassKindMetadata,KotlinTypeAliasMetadata,KotlinTypeMetadata,KotlinTypeParameterMetadata,KotlinValueParameterMetadata,KotlinVersionRequirementMetadata,LessZeroFrame,LibraryClass,LibraryField,LibraryMember,LibraryMethod,LineNumberTableAttribute,LocalVariableInfo,LocalVariableTableAttribute,LocalVariableTypeInfo,LocalVariableTypeTableAttribute,LongConstant,LongType,MethodHandleConstant,MethodParametersAttribute,MethodrefConstant,MethodTypeConstant,ModuleAttribute,ModuleConstant,ModuleMainClassAttribute,ModulePackagesAttribute,MoreZeroFrame,NameAndTypeConstant,NestHostAttribute,NestMembersAttribute,NullType,ObjectType,OpensInfo,PackageConstant,ParameterAnnotationsAttribute,ParameterInfo,PermittedSubclassesAttribute,PrimitiveArrayConstant,ProgramClass,ProgramField,ProgramMember,ProgramMethod,ProvidesInfo,RecordAttribute,RecordComponentInfo,RefConstant,RequiresInfo,ResourceFile,RuntimeInvisibleAnnotationsAttribute,RuntimeInvisibleParameterAnnotationsAttribute,RuntimeInvisibleTypeAnnotationsAttribute,RuntimeVisibleAnnotationsAttribute,RuntimeVisibleParameterAnnotationsAttribute,RuntimeVisibleTypeAnnotationsAttribute,SameOneFrame,SameZeroFrame,SignatureAttribute,SimpleFeatureNamedProcessable,SimpleProcessable,SourceDebugExtensionAttribute,SourceDirAttribute,SourceFileAttribute,StackMapAttribute,StackMapFrame,StackMapTableAttribute,StringConstant,SyntheticAttribute,TopType,TypeAnnotation,TypeAnnotationsAttribute,UninitializedThisType,UninitializedType,UnknownAttribute,UnsupportedKotlinMetadata,Utf8Constant,VerificationType
public interface Processable extends java.io.SerializableBase interface for entities that need flags and/or additional information when they are processed, typically by visitor classes.The processing flags provide simple boolean markers. In ProGuard, they mark entities to be kept across processing steps, for example.
The processing info provides any more general information. In ProGuard, the contain relatively short-lived information inside processing steps.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default voidaccept(ProcessableVisitor processableVisitor)Accepts the given processable visitor.voidaddProcessingFlags(int... flags)Adds all given flags to this processable.intgetProcessingFlags()Returns the processing flags.java.lang.ObjectgetProcessingInfo()Gets the processing information.booleanhasProcessingFlags(int... flags)Checks whether all the given flags are set on this processable.voidremoveProcessingFlags(int... flags)Removes all given flags from this processable.voidsetProcessingFlags(int processingFlags)Sets the processing flags.voidsetProcessingInfo(java.lang.Object processingInfo)Sets the processing information.
-
-
-
Method Detail
-
setProcessingFlags
void setProcessingFlags(int processingFlags)
Sets the processing flags.
-
getProcessingFlags
int getProcessingFlags()
Returns the processing flags.
-
addProcessingFlags
void addProcessingFlags(int... flags)
Adds all given flags to this processable.
-
removeProcessingFlags
void removeProcessingFlags(int... flags)
Removes all given flags from this processable.
-
hasProcessingFlags
boolean hasProcessingFlags(int... flags)
Checks whether all the given flags are set on this processable.
-
setProcessingInfo
void setProcessingInfo(java.lang.Object processingInfo)
Sets the processing information.
-
getProcessingInfo
java.lang.Object getProcessingInfo()
Gets the processing information.
-
accept
default void accept(ProcessableVisitor processableVisitor)
Accepts the given processable visitor.
-
-