sometsome 1.0.2 → 3.10.42
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/proguard4.7/README +33 -0
- data/lib/proguard4.7/bin/proguard.bat +14 -0
- data/lib/proguard4.7/bin/proguard.sh +11 -0
- data/lib/proguard4.7/bin/proguardgui.bat +14 -0
- data/lib/proguard4.7/bin/proguardgui.sh +15 -0
- data/lib/proguard4.7/bin/retrace.bat +14 -0
- data/lib/proguard4.7/bin/retrace.sh +12 -0
- data/lib/proguard4.7/build/build.sh +94 -0
- data/lib/proguard4.7/build/build.xml +171 -0
- data/lib/proguard4.7/build/makefile +94 -0
- data/lib/proguard4.7/docs/FAQ.html +253 -0
- data/lib/proguard4.7/docs/GPL.html +406 -0
- data/lib/proguard4.7/docs/GPL_exception.html +56 -0
- data/lib/proguard4.7/docs/acknowledgements.html +76 -0
- data/lib/proguard4.7/docs/alternatives.html +699 -0
- data/lib/proguard4.7/docs/checkmark.gif +0 -0
- data/lib/proguard4.7/docs/downloads.html +623 -0
- data/lib/proguard4.7/docs/drop1.gif +0 -0
- data/lib/proguard4.7/docs/drop2.gif +0 -0
- data/lib/proguard4.7/docs/drop3.gif +0 -0
- data/lib/proguard4.7/docs/favicon.ico +0 -0
- data/lib/proguard4.7/docs/feedback.html +120 -0
- data/lib/proguard4.7/docs/index.html +92 -0
- data/lib/proguard4.7/docs/license.html +60 -0
- data/lib/proguard4.7/docs/main.html +102 -0
- data/lib/proguard4.7/docs/manual/ant.html +634 -0
- data/lib/proguard4.7/docs/manual/attention.gif +0 -0
- data/lib/proguard4.7/docs/manual/examples.html +1504 -0
- data/lib/proguard4.7/docs/manual/gui.html +479 -0
- data/lib/proguard4.7/docs/manual/index.html +51 -0
- data/lib/proguard4.7/docs/manual/introduction.html +173 -0
- data/lib/proguard4.7/docs/manual/limitations.html +69 -0
- data/lib/proguard4.7/docs/manual/optimizations.html +172 -0
- data/lib/proguard4.7/docs/manual/refcard.html +486 -0
- data/lib/proguard4.7/docs/manual/retrace/examples.html +345 -0
- data/lib/proguard4.7/docs/manual/retrace/index.html +37 -0
- data/lib/proguard4.7/docs/manual/retrace/introduction.html +79 -0
- data/lib/proguard4.7/docs/manual/retrace/usage.html +127 -0
- data/lib/proguard4.7/docs/manual/sections.html +60 -0
- data/lib/proguard4.7/docs/manual/style.css +105 -0
- data/lib/proguard4.7/docs/manual/troubleshooting.html +729 -0
- data/lib/proguard4.7/docs/manual/usage.html +1243 -0
- data/lib/proguard4.7/docs/manual/wtk.html +70 -0
- data/lib/proguard4.7/docs/quality.html +56 -0
- data/lib/proguard4.7/docs/results.html +170 -0
- data/lib/proguard4.7/docs/saikoalogo.png +0 -0
- data/lib/proguard4.7/docs/screenshot_console.gif +0 -0
- data/lib/proguard4.7/docs/screenshot_console_small.gif +0 -0
- data/lib/proguard4.7/docs/screenshot_gui1.gif +0 -0
- data/lib/proguard4.7/docs/screenshot_gui2.gif +0 -0
- data/lib/proguard4.7/docs/screenshot_gui3.gif +0 -0
- data/lib/proguard4.7/docs/screenshot_gui4.gif +0 -0
- data/lib/proguard4.7/docs/screenshot_gui5.gif +0 -0
- data/lib/proguard4.7/docs/screenshot_gui6.gif +0 -0
- data/lib/proguard4.7/docs/screenshot_gui7.gif +0 -0
- data/lib/proguard4.7/docs/screenshot_gui8.gif +0 -0
- data/lib/proguard4.7/docs/screenshots.html +67 -0
- data/lib/proguard4.7/docs/screenshots_gui_small.gif +0 -0
- data/lib/proguard4.7/docs/sections.html +64 -0
- data/lib/proguard4.7/docs/sflogo.png +0 -0
- data/lib/proguard4.7/docs/steel.gif +0 -0
- data/lib/proguard4.7/docs/style.css +223 -0
- data/lib/proguard4.7/docs/testimonials.html +133 -0
- data/lib/proguard4.7/docs/title.gif +0 -0
- data/lib/proguard4.7/docs/title.html +17 -0
- data/lib/proguard4.7/examples/android.pro +149 -0
- data/lib/proguard4.7/examples/annotations/examples.pro +60 -0
- data/lib/proguard4.7/examples/annotations/examples/Applet.java +22 -0
- data/lib/proguard4.7/examples/annotations/examples/Application.java +20 -0
- data/lib/proguard4.7/examples/annotations/examples/Bean.java +56 -0
- data/lib/proguard4.7/examples/annotations/examples/NativeCallBack.java +44 -0
- data/lib/proguard4.7/examples/annotations/lib/annotations.jar +0 -0
- data/lib/proguard4.7/examples/annotations/lib/annotations.pro +118 -0
- data/lib/proguard4.7/examples/annotations/src/proguard/annotation/Keep.java +18 -0
- data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepApplication.java +18 -0
- data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepClassMemberNames.java +18 -0
- data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepClassMembers.java +18 -0
- data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepGettersSetters.java +18 -0
- data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepImplementations.java +18 -0
- data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepName.java +18 -0
- data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepPublicClassMemberNames.java +18 -0
- data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepPublicClassMembers.java +18 -0
- data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepPublicGettersSetters.java +18 -0
- data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepPublicImplementations.java +18 -0
- data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepPublicProtectedClassMemberNames.java +18 -0
- data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepPublicProtectedClassMembers.java +19 -0
- data/lib/proguard4.7/examples/ant/android-8.xml +177 -0
- data/lib/proguard4.7/examples/ant/applets.xml +88 -0
- data/lib/proguard4.7/examples/ant/applications1.xml +15 -0
- data/lib/proguard4.7/examples/ant/applications2.xml +74 -0
- data/lib/proguard4.7/examples/ant/applications3.xml +98 -0
- data/lib/proguard4.7/examples/ant/library.xml +102 -0
- data/lib/proguard4.7/examples/ant/midlets.xml +52 -0
- data/lib/proguard4.7/examples/ant/proguard.xml +78 -0
- data/lib/proguard4.7/examples/ant/servlets.xml +88 -0
- data/lib/proguard4.7/examples/applets.pro +69 -0
- data/lib/proguard4.7/examples/applications.pro +75 -0
- data/lib/proguard4.7/examples/dictionaries/compact.txt +18 -0
- data/lib/proguard4.7/examples/dictionaries/keywords.txt +58 -0
- data/lib/proguard4.7/examples/dictionaries/shakespeare.txt +23 -0
- data/lib/proguard4.7/examples/dictionaries/windows.txt +209 -0
- data/lib/proguard4.7/examples/library.pro +79 -0
- data/lib/proguard4.7/examples/midlets.pro +67 -0
- data/lib/proguard4.7/examples/proguard.pro +57 -0
- data/lib/proguard4.7/examples/proguardall.pro +62 -0
- data/lib/proguard4.7/examples/proguardgui.pro +50 -0
- data/lib/proguard4.7/examples/retrace.pro +43 -0
- data/lib/proguard4.7/examples/scala.pro +132 -0
- data/lib/proguard4.7/examples/servlets.pro +70 -0
- data/lib/proguard4.7/lib/proguard.jar +0 -0
- data/lib/proguard4.7/lib/proguardgui.jar +0 -0
- data/lib/proguard4.7/lib/retrace.jar +0 -0
- data/lib/proguard4.7/src/proguard/ArgumentWordReader.java +111 -0
- data/lib/proguard4.7/src/proguard/ClassPath.java +94 -0
- data/lib/proguard4.7/src/proguard/ClassPathEntry.java +282 -0
- data/lib/proguard4.7/src/proguard/ClassSpecification.java +259 -0
- data/lib/proguard4.7/src/proguard/ClassSpecificationVisitorFactory.java +503 -0
- data/lib/proguard4.7/src/proguard/Configuration.java +328 -0
- data/lib/proguard4.7/src/proguard/ConfigurationConstants.java +123 -0
- data/lib/proguard4.7/src/proguard/ConfigurationParser.java +1285 -0
- data/lib/proguard4.7/src/proguard/ConfigurationWriter.java +651 -0
- data/lib/proguard4.7/src/proguard/DataEntryReaderFactory.java +141 -0
- data/lib/proguard4.7/src/proguard/DataEntryWriterFactory.java +150 -0
- data/lib/proguard4.7/src/proguard/DescriptorKeepChecker.java +169 -0
- data/lib/proguard4.7/src/proguard/DuplicateClassPrinter.java +63 -0
- data/lib/proguard4.7/src/proguard/FileWordReader.java +55 -0
- data/lib/proguard4.7/src/proguard/FullyQualifiedClassNameChecker.java +191 -0
- data/lib/proguard4.7/src/proguard/GPL.java +197 -0
- data/lib/proguard4.7/src/proguard/Initializer.java +424 -0
- data/lib/proguard4.7/src/proguard/InputReader.java +233 -0
- data/lib/proguard4.7/src/proguard/KeepClassMemberChecker.java +87 -0
- data/lib/proguard4.7/src/proguard/KeepClassSpecification.java +137 -0
- data/lib/proguard4.7/src/proguard/LineWordReader.java +74 -0
- data/lib/proguard4.7/src/proguard/MANIFEST.MF +2 -0
- data/lib/proguard4.7/src/proguard/MemberSpecification.java +114 -0
- data/lib/proguard4.7/src/proguard/OutputWriter.java +296 -0
- data/lib/proguard4.7/src/proguard/ParseException.java +51 -0
- data/lib/proguard4.7/src/proguard/ProGuard.java +512 -0
- data/lib/proguard4.7/src/proguard/SeedPrinter.java +97 -0
- data/lib/proguard4.7/src/proguard/SubclassedClassFilter.java +62 -0
- data/lib/proguard4.7/src/proguard/Targeter.java +88 -0
- data/lib/proguard4.7/src/proguard/UpToDateChecker.java +232 -0
- data/lib/proguard4.7/src/proguard/WordReader.java +387 -0
- data/lib/proguard4.7/src/proguard/ant/ClassPathElement.java +191 -0
- data/lib/proguard4.7/src/proguard/ant/ClassSpecificationElement.java +258 -0
- data/lib/proguard4.7/src/proguard/ant/ConfigurationElement.java +53 -0
- data/lib/proguard4.7/src/proguard/ant/ConfigurationTask.java +441 -0
- data/lib/proguard4.7/src/proguard/ant/FilterElement.java +85 -0
- data/lib/proguard4.7/src/proguard/ant/KeepSpecificationElement.java +87 -0
- data/lib/proguard4.7/src/proguard/ant/MemberSpecificationElement.java +218 -0
- data/lib/proguard4.7/src/proguard/ant/ProGuardTask.java +352 -0
- data/lib/proguard4.7/src/proguard/ant/package.html +3 -0
- data/lib/proguard4.7/src/proguard/ant/task.properties +2 -0
- data/lib/proguard4.7/src/proguard/classfile/ClassConstants.java +316 -0
- data/lib/proguard4.7/src/proguard/classfile/ClassPool.java +152 -0
- data/lib/proguard4.7/src/proguard/classfile/Clazz.java +261 -0
- data/lib/proguard4.7/src/proguard/classfile/Field.java +32 -0
- data/lib/proguard4.7/src/proguard/classfile/LibraryClass.java +548 -0
- data/lib/proguard4.7/src/proguard/classfile/LibraryField.java +77 -0
- data/lib/proguard4.7/src/proguard/classfile/LibraryMember.java +108 -0
- data/lib/proguard4.7/src/proguard/classfile/LibraryMethod.java +83 -0
- data/lib/proguard4.7/src/proguard/classfile/Member.java +57 -0
- data/lib/proguard4.7/src/proguard/classfile/Method.java +32 -0
- data/lib/proguard4.7/src/proguard/classfile/ProgramClass.java +572 -0
- data/lib/proguard4.7/src/proguard/classfile/ProgramField.java +93 -0
- data/lib/proguard4.7/src/proguard/classfile/ProgramMember.java +168 -0
- data/lib/proguard4.7/src/proguard/classfile/ProgramMethod.java +99 -0
- data/lib/proguard4.7/src/proguard/classfile/VisitorAccepter.java +47 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/Attribute.java +142 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/BootstrapMethodInfo.java +89 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/BootstrapMethodsAttribute.java +95 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/CodeAttribute.java +202 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/ConstantValueAttribute.java +62 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/DeprecatedAttribute.java +66 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/EnclosingMethodAttribute.java +132 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/ExceptionInfo.java +100 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/ExceptionsAttribute.java +80 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/InnerClassesAttribute.java +80 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/InnerClassesInfo.java +119 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/LineNumberInfo.java +50 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/LineNumberTableAttribute.java +100 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/LocalVariableInfo.java +99 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/LocalVariableTableAttribute.java +79 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/LocalVariableTypeInfo.java +107 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/LocalVariableTypeTableAttribute.java +79 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/SignatureAttribute.java +100 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/SourceDirAttribute.java +62 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/SourceFileAttribute.java +62 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/SyntheticAttribute.java +66 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/UnknownAttribute.java +82 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/Annotation.java +143 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/AnnotationDefaultAttribute.java +73 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/AnnotationElementValue.java +76 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/AnnotationsAttribute.java +100 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/ArrayElementValue.java +82 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/ClassElementValue.java +95 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/ConstantElementValue.java +71 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/ElementValue.java +126 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/EnumConstantElementValue.java +99 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/ParameterAnnotationsAttribute.java +83 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/RuntimeInvisibleAnnotationsAttribute.java +70 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/RuntimeInvisibleParameterAnnotationsAttribute.java +62 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/RuntimeVisibleAnnotationsAttribute.java +70 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/RuntimeVisibleParameterAnnotationsAttribute.java +62 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/package.html +4 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/AllAnnotationVisitor.java +100 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/AnnotatedClassVisitor.java +62 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/AnnotationToMemberVisitor.java +62 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/AnnotationTypeFilter.java +102 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/AnnotationVisitor.java +40 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/ElementValueVisitor.java +51 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/package.html +3 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/package.html +3 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/DoubleType.java +66 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/FloatType.java +66 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/FullFrame.java +202 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/IntegerType.java +66 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/LessZeroFrame.java +103 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/LongType.java +66 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/MoreZeroFrame.java +161 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/NullType.java +66 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/ObjectType.java +107 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/SameOneFrame.java +115 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/SameZeroFrame.java +74 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/StackMapAttribute.java +91 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/StackMapFrame.java +117 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/StackMapTableAttribute.java +93 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/TopType.java +66 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/UninitializedThisType.java +66 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/UninitializedType.java +106 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/VerificationType.java +103 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/VerificationTypeFactory.java +112 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/visitor/StackMapFrameVisitor.java +40 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/visitor/VerificationTypeVisitor.java +65 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/AllAttributeVisitor.java +117 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/AllBootstrapMethodInfoVisitor.java +55 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/AllExceptionInfoVisitor.java +55 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/AllInnerClassesInfoVisitor.java +55 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/AttributeNameFilter.java +368 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/AttributeVisitor.java +90 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/BootstrapMethodInfoVisitor.java +40 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/ExceptionInfoVisitor.java +37 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/InnerClassesInfoVisitor.java +38 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/LineNumberInfoVisitor.java +38 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/LocalVariableInfoVisitor.java +38 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/LocalVariableTypeInfoVisitor.java +38 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/MultiAttributeVisitor.java +365 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/NonEmptyAttributeFilter.java +293 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/RequiredAttributeFilter.java +360 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/StackSizeComputer.java +378 -0
- data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/package.html +3 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/ClassConstant.java +105 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/Constant.java +68 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/DoubleConstant.java +82 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/FieldrefConstant.java +71 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/FloatConstant.java +82 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/IntegerConstant.java +82 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/InterfaceMethodrefConstant.java +71 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/InvokeDynamicConstant.java +148 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/LongConstant.java +82 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/MethodHandleConstant.java +124 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/MethodTypeConstant.java +93 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/MethodrefConstant.java +71 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/NameAndTypeConstant.java +119 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/RefConstant.java +130 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/StringConstant.java +135 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/Utf8Constant.java +285 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/visitor/AllConstantVisitor.java +53 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/visitor/BootstrapMethodHandleTraveler.java +100 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/visitor/ConstantTagFilter.java +86 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/visitor/ConstantVisitor.java +49 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/visitor/ExceptClassConstantFilter.java +69 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/visitor/MethodrefTraveler.java +60 -0
- data/lib/proguard4.7/src/proguard/classfile/constant/visitor/package.html +3 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/AccessFixer.java +180 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/AnnotationAdder.java +153 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/AnnotationsAttributeEditor.java +67 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/AttributeAdder.java +457 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/AttributeSorter.java +89 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/AttributesEditor.java +269 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/BridgeMethodFixer.java +117 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ClassEditor.java +255 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ClassElementSorter.java +52 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ClassMemberSorter.java +69 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ClassReferenceFixer.java +546 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/CodeAttributeComposer.java +843 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/CodeAttributeEditor.java +1104 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/CodeAttributeEditorResetter.java +60 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ComparableConstant.java +249 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ConstantAdder.java +239 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ConstantPoolEditor.java +782 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ConstantPoolRemapper.java +662 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ConstantPoolShrinker.java +578 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ConstantPoolSorter.java +123 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ElementValueAdder.java +217 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ElementValuesEditor.java +238 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ExceptionAdder.java +65 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ExceptionInfoAdder.java +67 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ExceptionsAttributeEditor.java +68 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/InnerClassesAccessFixer.java +83 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/InstructionAdder.java +76 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/InstructionWriter.java +278 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/InterfaceAdder.java +62 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/InterfaceSorter.java +152 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/InterfacesEditor.java +122 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/LineNumberInfoAdder.java +59 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/LineNumberTableAttributeEditor.java +67 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/LocalVariableInfoAdder.java +67 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/LocalVariableTableAttributeEditor.java +67 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/LocalVariableTypeInfoAdder.java +68 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/LocalVariableTypeTableAttributeEditor.java +68 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/MemberAdder.java +288 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/MemberReferenceFixer.java +447 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/MethodInvocationFixer.java +243 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/NameAndTypeShrinker.java +188 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/NamedAttributeDeleter.java +54 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/ParameterAnnotationsAttributeEditor.java +71 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/StackSizeUpdater.java +54 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/SubclassAdder.java +59 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/SubclassToAdder.java +60 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/Utf8Shrinker.java +455 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/VariableCleaner.java +267 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/VariableEditor.java +130 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/VariableRemapper.java +156 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/VariableSizeUpdater.java +105 -0
- data/lib/proguard4.7/src/proguard/classfile/editor/package.html +3 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/BranchInstruction.java +180 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/ConstantInstruction.java +309 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/Instruction.java +920 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/InstructionConstants.java +449 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/InstructionFactory.java +300 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/InstructionUtil.java +67 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/LookUpSwitchInstruction.java +135 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/SimpleInstruction.java +255 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/SwitchInstruction.java +83 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/TableSwitchInstruction.java +139 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/VariableInstruction.java +372 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/package.html +9 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/visitor/AllInstructionVisitor.java +56 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/visitor/InstructionCounter.java +59 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/visitor/InstructionVisitor.java +42 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/visitor/MultiInstructionVisitor.java +131 -0
- data/lib/proguard4.7/src/proguard/classfile/instruction/visitor/package.html +3 -0
- data/lib/proguard4.7/src/proguard/classfile/io/LibraryClassReader.java +383 -0
- data/lib/proguard4.7/src/proguard/classfile/io/ProgramClassReader.java +919 -0
- data/lib/proguard4.7/src/proguard/classfile/io/ProgramClassWriter.java +735 -0
- data/lib/proguard4.7/src/proguard/classfile/io/RuntimeDataInput.java +223 -0
- data/lib/proguard4.7/src/proguard/classfile/io/RuntimeDataOutput.java +224 -0
- data/lib/proguard4.7/src/proguard/classfile/io/package.html +3 -0
- data/lib/proguard4.7/src/proguard/classfile/package.html +15 -0
- data/lib/proguard4.7/src/proguard/classfile/util/AccessUtil.java +105 -0
- data/lib/proguard4.7/src/proguard/classfile/util/ClassReferenceInitializer.java +559 -0
- data/lib/proguard4.7/src/proguard/classfile/util/ClassSubHierarchyInitializer.java +77 -0
- data/lib/proguard4.7/src/proguard/classfile/util/ClassSuperHierarchyInitializer.java +163 -0
- data/lib/proguard4.7/src/proguard/classfile/util/ClassUtil.java +1227 -0
- data/lib/proguard4.7/src/proguard/classfile/util/DescriptorClassEnumeration.java +236 -0
- data/lib/proguard4.7/src/proguard/classfile/util/DynamicClassReferenceInitializer.java +485 -0
- data/lib/proguard4.7/src/proguard/classfile/util/DynamicMemberReferenceInitializer.java +944 -0
- data/lib/proguard4.7/src/proguard/classfile/util/ExternalTypeEnumeration.java +106 -0
- data/lib/proguard4.7/src/proguard/classfile/util/InstructionSequenceMatcher.java +754 -0
- data/lib/proguard4.7/src/proguard/classfile/util/InternalTypeEnumeration.java +204 -0
- data/lib/proguard4.7/src/proguard/classfile/util/MemberFinder.java +197 -0
- data/lib/proguard4.7/src/proguard/classfile/util/MethodLinker.java +160 -0
- data/lib/proguard4.7/src/proguard/classfile/util/SimplifiedVisitor.java +834 -0
- data/lib/proguard4.7/src/proguard/classfile/util/StringReferenceInitializer.java +90 -0
- data/lib/proguard4.7/src/proguard/classfile/util/StringSharer.java +172 -0
- data/lib/proguard4.7/src/proguard/classfile/util/WarningPrinter.java +136 -0
- data/lib/proguard4.7/src/proguard/classfile/util/package.html +3 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/AllClassVisitor.java +47 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/AllFieldVisitor.java +55 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/AllMemberVisitor.java +57 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/AllMethodVisitor.java +55 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/BottomClassFilter.java +69 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ClassAccessFilter.java +88 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ClassCleaner.java +275 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ClassCollector.java +58 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ClassCounter.java +56 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ClassHierarchyTraveler.java +91 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ClassNameFilter.java +112 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ClassPoolFiller.java +55 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ClassPoolVisitor.java +37 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ClassPresenceFilter.java +93 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ClassPrinter.java +1011 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ClassVersionFilter.java +85 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ClassVersionSetter.java +83 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ClassVisitor.java +36 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ConcreteClassDownTraveler.java +100 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/DotClassClassVisitor.java +89 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptClassFilter.java +69 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptClassesFilter.java +90 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptionCounter.java +52 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptionExcludedOffsetFilter.java +64 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptionHandlerConstantVisitor.java +62 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptionHandlerFilter.java +70 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptionOffsetFilter.java +64 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptionRangeFilter.java +68 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ImplementedClassConstantFilter.java +69 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ImplementedClassFilter.java +71 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ImplementingClassConstantFilter.java +70 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/LibraryClassFilter.java +60 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/LibraryMemberFilter.java +73 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/MemberAccessFilter.java +122 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/MemberClassAccessFilter.java +106 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/MemberCollector.java +59 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/MemberCounter.java +72 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/MemberDescriptorFilter.java +113 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/MemberNameFilter.java +113 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/MemberToClassVisitor.java +90 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/MemberVisitor.java +40 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/MethodImplementationFilter.java +70 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/MethodImplementationTraveler.java +128 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/MultiClassPoolVisitor.java +88 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/MultiClassVisitor.java +97 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/MultiMemberVisitor.java +113 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/NamedClassVisitor.java +49 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/NamedFieldVisitor.java +61 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/NamedMethodVisitor.java +61 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ProgramClassFilter.java +60 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ProgramMemberFilter.java +73 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ReferencedClassVisitor.java +255 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/ReferencedMemberVisitor.java +73 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/SimilarMemberVisitor.java +125 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/SimpleClassPrinter.java +167 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/SubclassFilter.java +91 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/SubclassTraveler.java +60 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/VariableClassVisitor.java +78 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/VariableMemberVisitor.java +96 -0
- data/lib/proguard4.7/src/proguard/classfile/visitor/package.html +40 -0
- data/lib/proguard4.7/src/proguard/evaluation/BasicBranchUnit.java +126 -0
- data/lib/proguard4.7/src/proguard/evaluation/BasicInvocationUnit.java +425 -0
- data/lib/proguard4.7/src/proguard/evaluation/BranchUnit.java +63 -0
- data/lib/proguard4.7/src/proguard/evaluation/ClassConstantValueFactory.java +53 -0
- data/lib/proguard4.7/src/proguard/evaluation/ConstantValueFactory.java +113 -0
- data/lib/proguard4.7/src/proguard/evaluation/InvocationUnit.java +62 -0
- data/lib/proguard4.7/src/proguard/evaluation/Processor.java +908 -0
- data/lib/proguard4.7/src/proguard/evaluation/Stack.java +560 -0
- data/lib/proguard4.7/src/proguard/evaluation/TracedStack.java +342 -0
- data/lib/proguard4.7/src/proguard/evaluation/TracedVariables.java +199 -0
- data/lib/proguard4.7/src/proguard/evaluation/Variables.java +347 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/Category1Value.java +41 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/Category2Value.java +41 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ComparisonValue.java +69 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/CompositeDoubleValue.java +81 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/CompositeFloatValue.java +81 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/CompositeIntegerValue.java +87 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/CompositeLongValue.java +87 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedByteValue.java +64 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedCharacterValue.java +64 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedDoubleValue.java +64 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedFloatValue.java +64 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedIntegerValue.java +64 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedLongValue.java +64 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedShortValue.java +64 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/DoubleValue.java +359 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/FloatValue.java +359 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/IdentifiedDoubleValue.java +67 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/IdentifiedFloatValue.java +67 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/IdentifiedIntegerValue.java +67 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/IdentifiedLongValue.java +67 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/IdentifiedReferenceValue.java +102 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/IdentifiedValueFactory.java +75 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/InstructionOffsetValue.java +307 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/IntegerValue.java +1002 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/LongValue.java +554 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/NegatedDoubleValue.java +71 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/NegatedFloatValue.java +71 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/NegatedIntegerValue.java +71 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/NegatedLongValue.java +71 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ParticularDoubleValue.java +216 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ParticularFloatValue.java +216 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ParticularIntegerValue.java +383 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ParticularLongValue.java +271 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ReferenceValue.java +540 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/SpecificDoubleValue.java +186 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/SpecificFloatValue.java +186 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/SpecificIntegerValue.java +354 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/SpecificLongValue.java +259 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/SpecificValueFactory.java +97 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/TopValue.java +79 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/UnknownDoubleValue.java +125 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/UnknownFloatValue.java +125 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/UnknownIntegerValue.java +216 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/UnknownLongValue.java +160 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/Value.java +169 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/ValueFactory.java +193 -0
- data/lib/proguard4.7/src/proguard/evaluation/value/package.html +3 -0
- data/lib/proguard4.7/src/proguard/gui/ClassPathPanel.java +441 -0
- data/lib/proguard4.7/src/proguard/gui/ClassSpecificationDialog.java +546 -0
- data/lib/proguard4.7/src/proguard/gui/ClassSpecificationsPanel.java +231 -0
- data/lib/proguard4.7/src/proguard/gui/ExtensionFileFilter.java +78 -0
- data/lib/proguard4.7/src/proguard/gui/FilterBuilder.java +208 -0
- data/lib/proguard4.7/src/proguard/gui/FilterDialog.java +320 -0
- data/lib/proguard4.7/src/proguard/gui/GUIResources.java +56 -0
- data/lib/proguard4.7/src/proguard/gui/GUIResources.properties +643 -0
- data/lib/proguard4.7/src/proguard/gui/KeepSpecificationsPanel.java +81 -0
- data/lib/proguard4.7/src/proguard/gui/ListPanel.java +341 -0
- data/lib/proguard4.7/src/proguard/gui/MANIFEST.MF +3 -0
- data/lib/proguard4.7/src/proguard/gui/MemberSpecificationDialog.java +509 -0
- data/lib/proguard4.7/src/proguard/gui/MemberSpecificationsPanel.java +304 -0
- data/lib/proguard4.7/src/proguard/gui/MessageDialogRunnable.java +90 -0
- data/lib/proguard4.7/src/proguard/gui/OptimizationsDialog.java +251 -0
- data/lib/proguard4.7/src/proguard/gui/ProGuardGUI.java +1777 -0
- data/lib/proguard4.7/src/proguard/gui/ProGuardRunnable.java +154 -0
- data/lib/proguard4.7/src/proguard/gui/ReTraceRunnable.java +149 -0
- data/lib/proguard4.7/src/proguard/gui/SwingUtil.java +82 -0
- data/lib/proguard4.7/src/proguard/gui/TabbedPane.java +229 -0
- data/lib/proguard4.7/src/proguard/gui/TextAreaOutputStream.java +81 -0
- data/lib/proguard4.7/src/proguard/gui/arrow.gif +0 -0
- data/lib/proguard4.7/src/proguard/gui/boilerplate.pro +410 -0
- data/lib/proguard4.7/src/proguard/gui/default.pro +318 -0
- data/lib/proguard4.7/src/proguard/gui/package.html +3 -0
- data/lib/proguard4.7/src/proguard/gui/splash/BufferedSprite.java +145 -0
- data/lib/proguard4.7/src/proguard/gui/splash/CircleSprite.java +74 -0
- data/lib/proguard4.7/src/proguard/gui/splash/ClipSprite.java +85 -0
- data/lib/proguard4.7/src/proguard/gui/splash/ColorSprite.java +65 -0
- data/lib/proguard4.7/src/proguard/gui/splash/CompositeSprite.java +56 -0
- data/lib/proguard4.7/src/proguard/gui/splash/ConstantColor.java +51 -0
- data/lib/proguard4.7/src/proguard/gui/splash/ConstantDouble.java +49 -0
- data/lib/proguard4.7/src/proguard/gui/splash/ConstantFont.java +46 -0
- data/lib/proguard4.7/src/proguard/gui/splash/ConstantInt.java +49 -0
- data/lib/proguard4.7/src/proguard/gui/splash/ConstantString.java +49 -0
- data/lib/proguard4.7/src/proguard/gui/splash/ConstantTiming.java +57 -0
- data/lib/proguard4.7/src/proguard/gui/splash/FontSprite.java +65 -0
- data/lib/proguard4.7/src/proguard/gui/splash/ImageSprite.java +76 -0
- data/lib/proguard4.7/src/proguard/gui/splash/LinearColor.java +72 -0
- data/lib/proguard4.7/src/proguard/gui/splash/LinearDouble.java +55 -0
- data/lib/proguard4.7/src/proguard/gui/splash/LinearInt.java +55 -0
- data/lib/proguard4.7/src/proguard/gui/splash/LinearTiming.java +55 -0
- data/lib/proguard4.7/src/proguard/gui/splash/OverrideGraphics2D.java +598 -0
- data/lib/proguard4.7/src/proguard/gui/splash/RectangleSprite.java +114 -0
- data/lib/proguard4.7/src/proguard/gui/splash/SawToothTiming.java +53 -0
- data/lib/proguard4.7/src/proguard/gui/splash/ShadowedSprite.java +109 -0
- data/lib/proguard4.7/src/proguard/gui/splash/SineTiming.java +53 -0
- data/lib/proguard4.7/src/proguard/gui/splash/SmoothTiming.java +66 -0
- data/lib/proguard4.7/src/proguard/gui/splash/SplashPanel.java +235 -0
- data/lib/proguard4.7/src/proguard/gui/splash/Sprite.java +41 -0
- data/lib/proguard4.7/src/proguard/gui/splash/TextSprite.java +89 -0
- data/lib/proguard4.7/src/proguard/gui/splash/TimeSwitchSprite.java +75 -0
- data/lib/proguard4.7/src/proguard/gui/splash/Timing.java +34 -0
- data/lib/proguard4.7/src/proguard/gui/splash/TypeWriterString.java +71 -0
- data/lib/proguard4.7/src/proguard/gui/splash/VariableColor.java +36 -0
- data/lib/proguard4.7/src/proguard/gui/splash/VariableDouble.java +34 -0
- data/lib/proguard4.7/src/proguard/gui/splash/VariableFont.java +36 -0
- data/lib/proguard4.7/src/proguard/gui/splash/VariableInt.java +34 -0
- data/lib/proguard4.7/src/proguard/gui/splash/VariableSizeFont.java +65 -0
- data/lib/proguard4.7/src/proguard/gui/splash/VariableString.java +34 -0
- data/lib/proguard4.7/src/proguard/gui/splash/package.html +4 -0
- data/lib/proguard4.7/src/proguard/gui/vtitle.png +0 -0
- data/lib/proguard4.7/src/proguard/io/CascadingDataEntryWriter.java +94 -0
- data/lib/proguard4.7/src/proguard/io/ClassFilter.java +59 -0
- data/lib/proguard4.7/src/proguard/io/ClassReader.java +115 -0
- data/lib/proguard4.7/src/proguard/io/ClassRewriter.java +80 -0
- data/lib/proguard4.7/src/proguard/io/DataEntry.java +62 -0
- data/lib/proguard4.7/src/proguard/io/DataEntryClassWriter.java +85 -0
- data/lib/proguard4.7/src/proguard/io/DataEntryCopier.java +247 -0
- data/lib/proguard4.7/src/proguard/io/DataEntryDirectoryFilter.java +40 -0
- data/lib/proguard4.7/src/proguard/io/DataEntryFilter.java +38 -0
- data/lib/proguard4.7/src/proguard/io/DataEntryNameFilter.java +54 -0
- data/lib/proguard4.7/src/proguard/io/DataEntryObfuscator.java +150 -0
- data/lib/proguard4.7/src/proguard/io/DataEntryParentFilter.java +51 -0
- data/lib/proguard4.7/src/proguard/io/DataEntryPump.java +43 -0
- data/lib/proguard4.7/src/proguard/io/DataEntryReader.java +38 -0
- data/lib/proguard4.7/src/proguard/io/DataEntryRenamer.java +104 -0
- data/lib/proguard4.7/src/proguard/io/DataEntryRewriter.java +148 -0
- data/lib/proguard4.7/src/proguard/io/DataEntryWriter.java +73 -0
- data/lib/proguard4.7/src/proguard/io/DirectoryFilter.java +58 -0
- data/lib/proguard4.7/src/proguard/io/DirectoryPump.java +78 -0
- data/lib/proguard4.7/src/proguard/io/DirectoryWriter.java +165 -0
- data/lib/proguard4.7/src/proguard/io/FileDataEntry.java +96 -0
- data/lib/proguard4.7/src/proguard/io/FilteredDataEntryReader.java +90 -0
- data/lib/proguard4.7/src/proguard/io/FilteredDataEntryWriter.java +125 -0
- data/lib/proguard4.7/src/proguard/io/Finisher.java +37 -0
- data/lib/proguard4.7/src/proguard/io/JarReader.java +75 -0
- data/lib/proguard4.7/src/proguard/io/JarWriter.java +235 -0
- data/lib/proguard4.7/src/proguard/io/ManifestRewriter.java +216 -0
- data/lib/proguard4.7/src/proguard/io/NameFilter.java +83 -0
- data/lib/proguard4.7/src/proguard/io/ParentDataEntryWriter.java +75 -0
- data/lib/proguard4.7/src/proguard/io/RenamedDataEntry.java +83 -0
- data/lib/proguard4.7/src/proguard/io/ZipDataEntry.java +98 -0
- data/lib/proguard4.7/src/proguard/io/package.html +4 -0
- data/lib/proguard4.7/src/proguard/obfuscate/AttributeShrinker.java +120 -0
- data/lib/proguard4.7/src/proguard/obfuscate/AttributeUsageMarker.java +71 -0
- data/lib/proguard4.7/src/proguard/obfuscate/ClassObfuscator.java +533 -0
- data/lib/proguard4.7/src/proguard/obfuscate/ClassRenamer.java +109 -0
- data/lib/proguard4.7/src/proguard/obfuscate/DictionaryNameFactory.java +189 -0
- data/lib/proguard4.7/src/proguard/obfuscate/MapCleaner.java +57 -0
- data/lib/proguard4.7/src/proguard/obfuscate/MappingKeeper.java +177 -0
- data/lib/proguard4.7/src/proguard/obfuscate/MappingPrinter.java +147 -0
- data/lib/proguard4.7/src/proguard/obfuscate/MappingProcessor.java +79 -0
- data/lib/proguard4.7/src/proguard/obfuscate/MappingReader.java +199 -0
- data/lib/proguard4.7/src/proguard/obfuscate/MemberNameCleaner.java +60 -0
- data/lib/proguard4.7/src/proguard/obfuscate/MemberNameCollector.java +106 -0
- data/lib/proguard4.7/src/proguard/obfuscate/MemberNameConflictFixer.java +159 -0
- data/lib/proguard4.7/src/proguard/obfuscate/MemberNameFilter.java +120 -0
- data/lib/proguard4.7/src/proguard/obfuscate/MemberObfuscator.java +230 -0
- data/lib/proguard4.7/src/proguard/obfuscate/MemberSpecialNameFilter.java +101 -0
- data/lib/proguard4.7/src/proguard/obfuscate/MultiMappingProcessor.java +96 -0
- data/lib/proguard4.7/src/proguard/obfuscate/NameFactory.java +34 -0
- data/lib/proguard4.7/src/proguard/obfuscate/NameFactoryResetter.java +59 -0
- data/lib/proguard4.7/src/proguard/obfuscate/NameMarker.java +166 -0
- data/lib/proguard4.7/src/proguard/obfuscate/NumericNameFactory.java +49 -0
- data/lib/proguard4.7/src/proguard/obfuscate/Obfuscator.java +445 -0
- data/lib/proguard4.7/src/proguard/obfuscate/ParameterNameMarker.java +128 -0
- data/lib/proguard4.7/src/proguard/obfuscate/SimpleNameFactory.java +156 -0
- data/lib/proguard4.7/src/proguard/obfuscate/SourceFileRenamer.java +84 -0
- data/lib/proguard4.7/src/proguard/obfuscate/SpecialNameFactory.java +83 -0
- data/lib/proguard4.7/src/proguard/obfuscate/package.html +3 -0
- data/lib/proguard4.7/src/proguard/optimize/BootstrapMethodArgumentShrinker.java +103 -0
- data/lib/proguard4.7/src/proguard/optimize/ChangedCodePrinter.java +297 -0
- data/lib/proguard4.7/src/proguard/optimize/ConstantMemberFilter.java +77 -0
- data/lib/proguard4.7/src/proguard/optimize/ConstantParameterFilter.java +79 -0
- data/lib/proguard4.7/src/proguard/optimize/DuplicateInitializerFixer.java +215 -0
- data/lib/proguard4.7/src/proguard/optimize/DuplicateInitializerInvocationFixer.java +161 -0
- data/lib/proguard4.7/src/proguard/optimize/KeepMarker.java +95 -0
- data/lib/proguard4.7/src/proguard/optimize/KeptClassFilter.java +69 -0
- data/lib/proguard4.7/src/proguard/optimize/KeptMemberFilter.java +88 -0
- data/lib/proguard4.7/src/proguard/optimize/MemberDescriptorSpecializer.java +138 -0
- data/lib/proguard4.7/src/proguard/optimize/MethodDescriptorShrinker.java +317 -0
- data/lib/proguard4.7/src/proguard/optimize/MethodStaticizer.java +87 -0
- data/lib/proguard4.7/src/proguard/optimize/OptimizationInfoMemberFilter.java +94 -0
- data/lib/proguard4.7/src/proguard/optimize/Optimizer.java +963 -0
- data/lib/proguard4.7/src/proguard/optimize/ParameterShrinker.java +146 -0
- data/lib/proguard4.7/src/proguard/optimize/TailRecursionSimplifier.java +356 -0
- data/lib/proguard4.7/src/proguard/optimize/WriteOnlyFieldFilter.java +65 -0
- data/lib/proguard4.7/src/proguard/optimize/evaluation/EvaluationShrinker.java +2082 -0
- data/lib/proguard4.7/src/proguard/optimize/evaluation/EvaluationSimplifier.java +973 -0
- data/lib/proguard4.7/src/proguard/optimize/evaluation/LivenessAnalyzer.java +526 -0
- data/lib/proguard4.7/src/proguard/optimize/evaluation/LoadingInvocationUnit.java +195 -0
- data/lib/proguard4.7/src/proguard/optimize/evaluation/PartialEvaluator.java +1282 -0
- data/lib/proguard4.7/src/proguard/optimize/evaluation/StoringInvocationUnit.java +207 -0
- data/lib/proguard4.7/src/proguard/optimize/evaluation/TracedBranchUnit.java +59 -0
- data/lib/proguard4.7/src/proguard/optimize/evaluation/VariableOptimizer.java +345 -0
- data/lib/proguard4.7/src/proguard/optimize/evaluation/package.html +4 -0
- data/lib/proguard4.7/src/proguard/optimize/info/AccessMethodMarker.java +202 -0
- data/lib/proguard4.7/src/proguard/optimize/info/BackwardBranchMarker.java +90 -0
- data/lib/proguard4.7/src/proguard/optimize/info/CatchExceptionMarker.java +69 -0
- data/lib/proguard4.7/src/proguard/optimize/info/CaughtClassFilter.java +63 -0
- data/lib/proguard4.7/src/proguard/optimize/info/CaughtClassMarker.java +64 -0
- data/lib/proguard4.7/src/proguard/optimize/info/ClassOptimizationInfo.java +165 -0
- data/lib/proguard4.7/src/proguard/optimize/info/ClassOptimizationInfoSetter.java +47 -0
- data/lib/proguard4.7/src/proguard/optimize/info/DotClassFilter.java +63 -0
- data/lib/proguard4.7/src/proguard/optimize/info/DotClassMarker.java +96 -0
- data/lib/proguard4.7/src/proguard/optimize/info/ExceptionInstructionChecker.java +193 -0
- data/lib/proguard4.7/src/proguard/optimize/info/FieldOptimizationInfo.java +204 -0
- data/lib/proguard4.7/src/proguard/optimize/info/InstanceofClassFilter.java +63 -0
- data/lib/proguard4.7/src/proguard/optimize/info/InstanceofClassMarker.java +93 -0
- data/lib/proguard4.7/src/proguard/optimize/info/InstantiationClassFilter.java +62 -0
- data/lib/proguard4.7/src/proguard/optimize/info/InstantiationClassMarker.java +93 -0
- data/lib/proguard4.7/src/proguard/optimize/info/MemberOptimizationInfoSetter.java +59 -0
- data/lib/proguard4.7/src/proguard/optimize/info/MethodInvocationMarker.java +107 -0
- data/lib/proguard4.7/src/proguard/optimize/info/MethodOptimizationInfo.java +302 -0
- data/lib/proguard4.7/src/proguard/optimize/info/NoSideEffectMethodMarker.java +91 -0
- data/lib/proguard4.7/src/proguard/optimize/info/NonPrivateMemberMarker.java +171 -0
- data/lib/proguard4.7/src/proguard/optimize/info/PackageVisibleMemberContainingClassMarker.java +85 -0
- data/lib/proguard4.7/src/proguard/optimize/info/PackageVisibleMemberInvokingClassMarker.java +129 -0
- data/lib/proguard4.7/src/proguard/optimize/info/ParameterUsageMarker.java +285 -0
- data/lib/proguard4.7/src/proguard/optimize/info/ReadWriteFieldMarker.java +163 -0
- data/lib/proguard4.7/src/proguard/optimize/info/SideEffectInstructionChecker.java +245 -0
- data/lib/proguard4.7/src/proguard/optimize/info/SideEffectMethodMarker.java +175 -0
- data/lib/proguard4.7/src/proguard/optimize/info/StaticInitializerContainingClassFilter.java +62 -0
- data/lib/proguard4.7/src/proguard/optimize/info/StaticInitializerContainingClassMarker.java +65 -0
- data/lib/proguard4.7/src/proguard/optimize/info/SuperInvocationMarker.java +93 -0
- data/lib/proguard4.7/src/proguard/optimize/info/VariableUsageMarker.java +96 -0
- data/lib/proguard4.7/src/proguard/optimize/info/package.html +4 -0
- data/lib/proguard4.7/src/proguard/optimize/package.html +4 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/BranchTargetFinder.java +687 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/ClassFinalizer.java +84 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/ClassMerger.java +576 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/GotoCommonCodeReplacer.java +266 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/GotoGotoReplacer.java +115 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/GotoReturnReplacer.java +115 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/HorizontalClassMerger.java +90 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/InstructionSequenceConstants.java +4424 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/InstructionSequenceReplacer.java +420 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/InstructionSequencesReplacer.java +138 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/MemberPrivatizer.java +103 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/MethodFinalizer.java +93 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/MethodInliner.java +597 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/NopRemover.java +89 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/PeepholeOptimizer.java +103 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/ReachableCodeMarker.java +262 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/RetargetedInnerClassAttributeRemover.java +170 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/TargetClassChanger.java +455 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/UnreachableCodeRemover.java +143 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/UnreachableExceptionRemover.java +163 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/VariableShrinker.java +129 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/VerticalClassMerger.java +88 -0
- data/lib/proguard4.7/src/proguard/optimize/peephole/package.html +3 -0
- data/lib/proguard4.7/src/proguard/package.html +5 -0
- data/lib/proguard4.7/src/proguard/preverify/CodePreverifier.java +611 -0
- data/lib/proguard4.7/src/proguard/preverify/CodeSubroutineInliner.java +406 -0
- data/lib/proguard4.7/src/proguard/preverify/Preverifier.java +73 -0
- data/lib/proguard4.7/src/proguard/preverify/SubroutineInliner.java +73 -0
- data/lib/proguard4.7/src/proguard/retrace/MANIFEST.MF +3 -0
- data/lib/proguard4.7/src/proguard/retrace/ReTrace.java +749 -0
- data/lib/proguard4.7/src/proguard/retrace/package.html +4 -0
- data/lib/proguard4.7/src/proguard/shrink/AnnotationUsageMarker.java +333 -0
- data/lib/proguard4.7/src/proguard/shrink/ClassShrinker.java +458 -0
- data/lib/proguard4.7/src/proguard/shrink/InnerUsageMarker.java +174 -0
- data/lib/proguard4.7/src/proguard/shrink/InterfaceUsageMarker.java +152 -0
- data/lib/proguard4.7/src/proguard/shrink/ShortestUsageMark.java +183 -0
- data/lib/proguard4.7/src/proguard/shrink/ShortestUsageMarker.java +277 -0
- data/lib/proguard4.7/src/proguard/shrink/ShortestUsagePrinter.java +210 -0
- data/lib/proguard4.7/src/proguard/shrink/Shrinker.java +181 -0
- data/lib/proguard4.7/src/proguard/shrink/UsageMarker.java +1036 -0
- data/lib/proguard4.7/src/proguard/shrink/UsagePrinter.java +177 -0
- data/lib/proguard4.7/src/proguard/shrink/UsedClassFilter.java +74 -0
- data/lib/proguard4.7/src/proguard/shrink/UsedMemberFilter.java +93 -0
- data/lib/proguard4.7/src/proguard/shrink/package.html +3 -0
- data/lib/proguard4.7/src/proguard/util/AndMatcher.java +49 -0
- data/lib/proguard4.7/src/proguard/util/ClassNameParser.java +216 -0
- data/lib/proguard4.7/src/proguard/util/ConstantMatcher.java +48 -0
- data/lib/proguard4.7/src/proguard/util/EmptyStringMatcher.java +36 -0
- data/lib/proguard4.7/src/proguard/util/ExtensionMatcher.java +63 -0
- data/lib/proguard4.7/src/proguard/util/FileNameParser.java +121 -0
- data/lib/proguard4.7/src/proguard/util/FixedStringMatcher.java +56 -0
- data/lib/proguard4.7/src/proguard/util/ListMatcher.java +69 -0
- data/lib/proguard4.7/src/proguard/util/ListParser.java +137 -0
- data/lib/proguard4.7/src/proguard/util/ListUtil.java +180 -0
- data/lib/proguard4.7/src/proguard/util/NameParser.java +106 -0
- data/lib/proguard4.7/src/proguard/util/NotMatcher.java +46 -0
- data/lib/proguard4.7/src/proguard/util/OrMatcher.java +49 -0
- data/lib/proguard4.7/src/proguard/util/SettableMatcher.java +46 -0
- data/lib/proguard4.7/src/proguard/util/StringMatcher.java +38 -0
- data/lib/proguard4.7/src/proguard/util/StringParser.java +35 -0
- data/lib/proguard4.7/src/proguard/util/VariableStringMatcher.java +126 -0
- data/lib/proguard4.7/src/proguard/util/package.html +3 -0
- data/lib/proguard4.7/src/proguard/wtk/ProGuardObfuscator.java +141 -0
- data/lib/proguard4.7/src/proguard/wtk/default.pro +114 -0
- data/lib/proguard4.7/src/proguard/wtk/package.html +3 -0
- metadata +960 -10
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* ProGuard -- shrinking, optimization, obfuscation, and preverification
|
|
3
|
+
* of Java bytecode.
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) 2002-2011 Eric Lafortune (eric@graphics.cornell.edu)
|
|
6
|
+
*
|
|
7
|
+
* This program is free software; you can redistribute it and/or modify it
|
|
8
|
+
* under the terms of the GNU General Public License as published by the Free
|
|
9
|
+
* Software Foundation; either version 2 of the License, or (at your option)
|
|
10
|
+
* any later version.
|
|
11
|
+
*
|
|
12
|
+
* This program is distributed in the hope that it will be useful, but WITHOUT
|
|
13
|
+
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
14
|
+
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
|
15
|
+
* more details.
|
|
16
|
+
*
|
|
17
|
+
* You should have received a copy of the GNU General Public License along
|
|
18
|
+
* with this program; if not, write to the Free Software Foundation, Inc.,
|
|
19
|
+
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
20
|
+
*/
|
|
21
|
+
package proguard.classfile;
|
|
22
|
+
|
|
23
|
+
import proguard.classfile.attribute.visitor.AttributeVisitor;
|
|
24
|
+
import proguard.classfile.attribute.Attribute;
|
|
25
|
+
import proguard.classfile.visitor.*;
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Representation of a field from a program class.
|
|
29
|
+
*
|
|
30
|
+
* @author Eric Lafortune
|
|
31
|
+
*/
|
|
32
|
+
public class ProgramField extends ProgramMember implements Field
|
|
33
|
+
{
|
|
34
|
+
/**
|
|
35
|
+
* An extra field pointing to the Clazz object referenced in the
|
|
36
|
+
* descriptor string. This field is filled out by the <code>{@link
|
|
37
|
+
* proguard.classfile.util.ClassReferenceInitializer ClassReferenceInitializer}</code>.
|
|
38
|
+
* References to primitive types are ignored.
|
|
39
|
+
*/
|
|
40
|
+
public Clazz referencedClass;
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Creates an uninitialized ProgramField.
|
|
45
|
+
*/
|
|
46
|
+
public ProgramField()
|
|
47
|
+
{
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Creates an initialized ProgramField.
|
|
53
|
+
*/
|
|
54
|
+
public ProgramField(int u2accessFlags,
|
|
55
|
+
int u2nameIndex,
|
|
56
|
+
int u2descriptorIndex,
|
|
57
|
+
int u2attributesCount,
|
|
58
|
+
Attribute[] attributes,
|
|
59
|
+
Clazz referencedClass)
|
|
60
|
+
{
|
|
61
|
+
super(u2accessFlags, u2nameIndex, u2descriptorIndex, u2attributesCount, attributes);
|
|
62
|
+
|
|
63
|
+
this.referencedClass = referencedClass;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
// Implementations for ProgramMember.
|
|
68
|
+
|
|
69
|
+
public void accept(ProgramClass programClass, MemberVisitor memberVisitor)
|
|
70
|
+
{
|
|
71
|
+
memberVisitor.visitProgramField(programClass, this);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
public void attributesAccept(ProgramClass programClass, AttributeVisitor attributeVisitor)
|
|
76
|
+
{
|
|
77
|
+
for (int index = 0; index < u2attributesCount; index++)
|
|
78
|
+
{
|
|
79
|
+
attributes[index].accept(programClass, this, attributeVisitor);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
// Implementations for Member.
|
|
85
|
+
|
|
86
|
+
public void referencedClassesAccept(ClassVisitor classVisitor)
|
|
87
|
+
{
|
|
88
|
+
if (referencedClass != null)
|
|
89
|
+
{
|
|
90
|
+
referencedClass.accept(classVisitor);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* ProGuard -- shrinking, optimization, obfuscation, and preverification
|
|
3
|
+
* of Java bytecode.
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) 2002-2011 Eric Lafortune (eric@graphics.cornell.edu)
|
|
6
|
+
*
|
|
7
|
+
* This program is free software; you can redistribute it and/or modify it
|
|
8
|
+
* under the terms of the GNU General Public License as published by the Free
|
|
9
|
+
* Software Foundation; either version 2 of the License, or (at your option)
|
|
10
|
+
* any later version.
|
|
11
|
+
*
|
|
12
|
+
* This program is distributed in the hope that it will be useful, but WITHOUT
|
|
13
|
+
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
14
|
+
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
|
15
|
+
* more details.
|
|
16
|
+
*
|
|
17
|
+
* You should have received a copy of the GNU General Public License along
|
|
18
|
+
* with this program; if not, write to the Free Software Foundation, Inc.,
|
|
19
|
+
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
20
|
+
*/
|
|
21
|
+
package proguard.classfile;
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
import proguard.classfile.attribute.*;
|
|
25
|
+
import proguard.classfile.attribute.visitor.AttributeVisitor;
|
|
26
|
+
import proguard.classfile.visitor.MemberVisitor;
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Representation of a field or method from a program class.
|
|
30
|
+
*
|
|
31
|
+
* @author Eric Lafortune
|
|
32
|
+
*/
|
|
33
|
+
public abstract class ProgramMember implements Member
|
|
34
|
+
{
|
|
35
|
+
public int u2accessFlags;
|
|
36
|
+
public int u2nameIndex;
|
|
37
|
+
public int u2descriptorIndex;
|
|
38
|
+
public int u2attributesCount;
|
|
39
|
+
public Attribute[] attributes;
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* An extra field in which visitors can store information.
|
|
43
|
+
*/
|
|
44
|
+
public Object visitorInfo;
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Creates an uninitialized ProgramMember.
|
|
49
|
+
*/
|
|
50
|
+
protected ProgramMember()
|
|
51
|
+
{
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Creates an initialized ProgramMember.
|
|
57
|
+
*/
|
|
58
|
+
protected ProgramMember(int u2accessFlags,
|
|
59
|
+
int u2nameIndex,
|
|
60
|
+
int u2descriptorIndex,
|
|
61
|
+
int u2attributesCount,
|
|
62
|
+
Attribute[] attributes)
|
|
63
|
+
{
|
|
64
|
+
this.u2accessFlags = u2accessFlags;
|
|
65
|
+
this.u2nameIndex = u2nameIndex;
|
|
66
|
+
this.u2descriptorIndex = u2descriptorIndex;
|
|
67
|
+
this.u2attributesCount = u2attributesCount;
|
|
68
|
+
this.attributes = attributes;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Returns the line number range of the given class member as "m:n",
|
|
74
|
+
* if it can find it, or <code>null</code> otherwise.
|
|
75
|
+
*/
|
|
76
|
+
public String getLineNumberRange(Clazz clazz)
|
|
77
|
+
{
|
|
78
|
+
CodeAttribute codeAttribute =
|
|
79
|
+
(CodeAttribute)getAttribute(clazz, ClassConstants.ATTR_Code);
|
|
80
|
+
if (codeAttribute == null)
|
|
81
|
+
{
|
|
82
|
+
return null;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
LineNumberTableAttribute lineNumberTableAttribute =
|
|
86
|
+
(LineNumberTableAttribute)codeAttribute.getAttribute(clazz,
|
|
87
|
+
ClassConstants.ATTR_LineNumberTable);
|
|
88
|
+
if (lineNumberTableAttribute == null)
|
|
89
|
+
{
|
|
90
|
+
return null;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
return "" +
|
|
94
|
+
lineNumberTableAttribute.getLineNumber(0) +
|
|
95
|
+
":" +
|
|
96
|
+
lineNumberTableAttribute.getLineNumber(Integer.MAX_VALUE);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Returns the (first) attribute with the given name.
|
|
102
|
+
*/
|
|
103
|
+
private Attribute getAttribute(Clazz clazz, String name)
|
|
104
|
+
{
|
|
105
|
+
for (int index = 0; index < u2attributesCount; index++)
|
|
106
|
+
{
|
|
107
|
+
Attribute attribute = attributes[index];
|
|
108
|
+
if (attribute.getAttributeName(clazz).equals(name))
|
|
109
|
+
{
|
|
110
|
+
return attribute;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
return null;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Accepts the given member info visitor.
|
|
120
|
+
*/
|
|
121
|
+
public abstract void accept(ProgramClass programClass,
|
|
122
|
+
MemberVisitor memberVisitor);
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* Lets the given attribute info visitor visit all the attributes of
|
|
128
|
+
* this member info.
|
|
129
|
+
*/
|
|
130
|
+
public abstract void attributesAccept(ProgramClass programClass,
|
|
131
|
+
AttributeVisitor attributeVisitor);
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
// Implementations for Member.
|
|
135
|
+
|
|
136
|
+
public int getAccessFlags()
|
|
137
|
+
{
|
|
138
|
+
return u2accessFlags;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
public String getName(Clazz clazz)
|
|
142
|
+
{
|
|
143
|
+
return clazz.getString(u2nameIndex);
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
public String getDescriptor(Clazz clazz)
|
|
147
|
+
{
|
|
148
|
+
return clazz.getString(u2descriptorIndex);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
public void accept(Clazz clazz, MemberVisitor memberVisitor)
|
|
152
|
+
{
|
|
153
|
+
accept((ProgramClass)clazz, memberVisitor);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
// Implementations for VisitorAccepter.
|
|
158
|
+
|
|
159
|
+
public Object getVisitorInfo()
|
|
160
|
+
{
|
|
161
|
+
return visitorInfo;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
public void setVisitorInfo(Object visitorInfo)
|
|
165
|
+
{
|
|
166
|
+
this.visitorInfo = visitorInfo;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* ProGuard -- shrinking, optimization, obfuscation, and preverification
|
|
3
|
+
* of Java bytecode.
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) 2002-2011 Eric Lafortune (eric@graphics.cornell.edu)
|
|
6
|
+
*
|
|
7
|
+
* This program is free software; you can redistribute it and/or modify it
|
|
8
|
+
* under the terms of the GNU General Public License as published by the Free
|
|
9
|
+
* Software Foundation; either version 2 of the License, or (at your option)
|
|
10
|
+
* any later version.
|
|
11
|
+
*
|
|
12
|
+
* This program is distributed in the hope that it will be useful, but WITHOUT
|
|
13
|
+
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
14
|
+
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
|
15
|
+
* more details.
|
|
16
|
+
*
|
|
17
|
+
* You should have received a copy of the GNU General Public License along
|
|
18
|
+
* with this program; if not, write to the Free Software Foundation, Inc.,
|
|
19
|
+
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
20
|
+
*/
|
|
21
|
+
package proguard.classfile;
|
|
22
|
+
|
|
23
|
+
import proguard.classfile.attribute.visitor.AttributeVisitor;
|
|
24
|
+
import proguard.classfile.attribute.Attribute;
|
|
25
|
+
import proguard.classfile.visitor.*;
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Representation of a method from a program class.
|
|
29
|
+
*
|
|
30
|
+
* @author Eric Lafortune
|
|
31
|
+
*/
|
|
32
|
+
public class ProgramMethod extends ProgramMember implements Method
|
|
33
|
+
{
|
|
34
|
+
/**
|
|
35
|
+
* An extra field pointing to the Clazz objects referenced in the
|
|
36
|
+
* descriptor string. This field is filled out by the <code>{@link
|
|
37
|
+
* proguard.classfile.util.ClassReferenceInitializer ClassReferenceInitializer}</code>.
|
|
38
|
+
* References to primitive types are ignored.
|
|
39
|
+
*/
|
|
40
|
+
public Clazz[] referencedClasses;
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Creates an uninitialized ProgramMethod.
|
|
45
|
+
*/
|
|
46
|
+
public ProgramMethod()
|
|
47
|
+
{
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Creates an initialized ProgramMethod.
|
|
53
|
+
*/
|
|
54
|
+
public ProgramMethod(int u2accessFlags,
|
|
55
|
+
int u2nameIndex,
|
|
56
|
+
int u2descriptorIndex,
|
|
57
|
+
int u2attributesCount,
|
|
58
|
+
Attribute[] attributes,
|
|
59
|
+
Clazz[] referencedClasses)
|
|
60
|
+
{
|
|
61
|
+
super(u2accessFlags, u2nameIndex, u2descriptorIndex, u2attributesCount, attributes);
|
|
62
|
+
|
|
63
|
+
this.referencedClasses = referencedClasses;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
// Implementations for ProgramMember.
|
|
68
|
+
|
|
69
|
+
public void accept(ProgramClass programClass, MemberVisitor memberVisitor)
|
|
70
|
+
{
|
|
71
|
+
memberVisitor.visitProgramMethod(programClass, this);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
public void attributesAccept(ProgramClass programClass, AttributeVisitor attributeVisitor)
|
|
76
|
+
{
|
|
77
|
+
for (int index = 0; index < u2attributesCount; index++)
|
|
78
|
+
{
|
|
79
|
+
attributes[index].accept(programClass, this, attributeVisitor);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
// Implementations for Member.
|
|
85
|
+
|
|
86
|
+
public void referencedClassesAccept(ClassVisitor classVisitor)
|
|
87
|
+
{
|
|
88
|
+
if (referencedClasses != null)
|
|
89
|
+
{
|
|
90
|
+
for (int index = 0; index < referencedClasses.length; index++)
|
|
91
|
+
{
|
|
92
|
+
if (referencedClasses[index] != null)
|
|
93
|
+
{
|
|
94
|
+
referencedClasses[index].accept(classVisitor);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* ProGuard -- shrinking, optimization, obfuscation, and preverification
|
|
3
|
+
* of Java bytecode.
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) 2002-2011 Eric Lafortune (eric@graphics.cornell.edu)
|
|
6
|
+
*
|
|
7
|
+
* This program is free software; you can redistribute it and/or modify it
|
|
8
|
+
* under the terms of the GNU General Public License as published by the Free
|
|
9
|
+
* Software Foundation; either version 2 of the License, or (at your option)
|
|
10
|
+
* any later version.
|
|
11
|
+
*
|
|
12
|
+
* This program is distributed in the hope that it will be useful, but WITHOUT
|
|
13
|
+
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
14
|
+
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
|
15
|
+
* more details.
|
|
16
|
+
*
|
|
17
|
+
* You should have received a copy of the GNU General Public License along
|
|
18
|
+
* with this program; if not, write to the Free Software Foundation, Inc.,
|
|
19
|
+
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
20
|
+
*/
|
|
21
|
+
package proguard.classfile;
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* This interface is a base interface for visitor accepters. It allows
|
|
28
|
+
* visitors to set and get any temporary information they desire on the
|
|
29
|
+
* objects they are visiting. Note that every visitor accepter has only one
|
|
30
|
+
* such property, so visitors will have to take care not to overwrite each
|
|
31
|
+
* other's information, if it is still required.
|
|
32
|
+
*
|
|
33
|
+
* @author Eric Lafortune
|
|
34
|
+
*/
|
|
35
|
+
public interface VisitorAccepter
|
|
36
|
+
{
|
|
37
|
+
/**
|
|
38
|
+
* Gets the visitor information of the visitor accepter.
|
|
39
|
+
*/
|
|
40
|
+
public Object getVisitorInfo();
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Sets the visitor information of the visitor accepter.
|
|
45
|
+
*/
|
|
46
|
+
public void setVisitorInfo(Object visitorInfo);
|
|
47
|
+
}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* ProGuard -- shrinking, optimization, obfuscation, and preverification
|
|
3
|
+
* of Java bytecode.
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) 2002-2011 Eric Lafortune (eric@graphics.cornell.edu)
|
|
6
|
+
*
|
|
7
|
+
* This program is free software; you can redistribute it and/or modify it
|
|
8
|
+
* under the terms of the GNU General Public License as published by the Free
|
|
9
|
+
* Software Foundation; either version 2 of the License, or (at your option)
|
|
10
|
+
* any later version.
|
|
11
|
+
*
|
|
12
|
+
* This program is distributed in the hope that it will be useful, but WITHOUT
|
|
13
|
+
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
14
|
+
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
|
15
|
+
* more details.
|
|
16
|
+
*
|
|
17
|
+
* You should have received a copy of the GNU General Public License along
|
|
18
|
+
* with this program; if not, write to the Free Software Foundation, Inc.,
|
|
19
|
+
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
20
|
+
*/
|
|
21
|
+
package proguard.classfile.attribute;
|
|
22
|
+
|
|
23
|
+
import proguard.classfile.*;
|
|
24
|
+
import proguard.classfile.attribute.visitor.AttributeVisitor;
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* This abstract class represents an attribute that is attached to a class,
|
|
28
|
+
* a class member, or a code attribute. Specific types of attributes are
|
|
29
|
+
* subclassed from it.
|
|
30
|
+
*
|
|
31
|
+
* @author Eric Lafortune
|
|
32
|
+
* @noinspection AbstractClassWithoutAbstractMethods
|
|
33
|
+
*/
|
|
34
|
+
public abstract class Attribute implements VisitorAccepter
|
|
35
|
+
{
|
|
36
|
+
public int u2attributeNameIndex;
|
|
37
|
+
//public int u4attributeLength;
|
|
38
|
+
//public byte info[];
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* An extra field in which visitors can store information.
|
|
42
|
+
*/
|
|
43
|
+
public Object visitorInfo;
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Create an uninitialized Attribute.
|
|
48
|
+
*/
|
|
49
|
+
protected Attribute()
|
|
50
|
+
{
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Create an initialized Attribute.
|
|
56
|
+
*/
|
|
57
|
+
protected Attribute(int u2attributeNameIndex)
|
|
58
|
+
{
|
|
59
|
+
this.u2attributeNameIndex = u2attributeNameIndex;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Returns the String name of the attribute.
|
|
65
|
+
*/
|
|
66
|
+
public String getAttributeName(Clazz clazz)
|
|
67
|
+
{
|
|
68
|
+
return clazz.getString(u2attributeNameIndex);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
// Methods to be implemented by extensions, if applicable.
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Accepts the given visitor.
|
|
76
|
+
*/
|
|
77
|
+
public void accept(Clazz clazz, AttributeVisitor attributeVisitor)
|
|
78
|
+
{
|
|
79
|
+
throw new UnsupportedOperationException("Method must be overridden in ["+this.getClass().getName()+"] if ever called");
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Accepts the given visitor in the context of the given field.
|
|
84
|
+
*/
|
|
85
|
+
public void accept(Clazz clazz, Field field, AttributeVisitor attributeVisitor)
|
|
86
|
+
{
|
|
87
|
+
// Delegate the default invocation if the field is null anyway.
|
|
88
|
+
if (field == null)
|
|
89
|
+
{
|
|
90
|
+
accept(clazz, attributeVisitor);
|
|
91
|
+
}
|
|
92
|
+
else
|
|
93
|
+
{
|
|
94
|
+
throw new UnsupportedOperationException("Method must be overridden in ["+this.getClass().getName()+"] if ever called");
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Accepts the given visitor in the context of the given method.
|
|
100
|
+
*/
|
|
101
|
+
public void accept(Clazz clazz, Method method, AttributeVisitor attributeVisitor)
|
|
102
|
+
{
|
|
103
|
+
// Delegate the default invocation if the method is null anyway.
|
|
104
|
+
if (method == null)
|
|
105
|
+
{
|
|
106
|
+
accept(clazz, (Field)null, attributeVisitor);
|
|
107
|
+
}
|
|
108
|
+
else
|
|
109
|
+
{
|
|
110
|
+
throw new UnsupportedOperationException("Method must be overridden in ["+this.getClass().getName()+"] if ever called");
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* Accepts the given visitor in the context of the given code attribute.
|
|
116
|
+
*/
|
|
117
|
+
public void accept(Clazz clazz, Method method, CodeAttribute codeAttribute, AttributeVisitor attributeVisitor)
|
|
118
|
+
{
|
|
119
|
+
// Delegate the default invocation if the code attribute is null anyway.
|
|
120
|
+
if (codeAttribute == null)
|
|
121
|
+
{
|
|
122
|
+
accept(clazz, method, attributeVisitor);
|
|
123
|
+
}
|
|
124
|
+
else
|
|
125
|
+
{
|
|
126
|
+
throw new UnsupportedOperationException("Method must be overridden in ["+this.getClass().getName()+"] if ever called");
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
// Implementations for VisitorAccepter.
|
|
132
|
+
|
|
133
|
+
public Object getVisitorInfo()
|
|
134
|
+
{
|
|
135
|
+
return visitorInfo;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
public void setVisitorInfo(Object visitorInfo)
|
|
139
|
+
{
|
|
140
|
+
this.visitorInfo = visitorInfo;
|
|
141
|
+
}
|
|
142
|
+
}
|