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,449 @@
|
|
|
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.instruction;
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Representation of an instruction.
|
|
25
|
+
*
|
|
26
|
+
* @author Eric Lafortune
|
|
27
|
+
*/
|
|
28
|
+
public interface InstructionConstants
|
|
29
|
+
{
|
|
30
|
+
public static final byte OP_NOP = 0;
|
|
31
|
+
public static final byte OP_ACONST_NULL = 1;
|
|
32
|
+
public static final byte OP_ICONST_M1 = 2;
|
|
33
|
+
public static final byte OP_ICONST_0 = 3;
|
|
34
|
+
public static final byte OP_ICONST_1 = 4;
|
|
35
|
+
public static final byte OP_ICONST_2 = 5;
|
|
36
|
+
public static final byte OP_ICONST_3 = 6;
|
|
37
|
+
public static final byte OP_ICONST_4 = 7;
|
|
38
|
+
public static final byte OP_ICONST_5 = 8;
|
|
39
|
+
public static final byte OP_LCONST_0 = 9;
|
|
40
|
+
public static final byte OP_LCONST_1 = 10;
|
|
41
|
+
public static final byte OP_FCONST_0 = 11;
|
|
42
|
+
public static final byte OP_FCONST_1 = 12;
|
|
43
|
+
public static final byte OP_FCONST_2 = 13;
|
|
44
|
+
public static final byte OP_DCONST_0 = 14;
|
|
45
|
+
public static final byte OP_DCONST_1 = 15;
|
|
46
|
+
public static final byte OP_BIPUSH = 16;
|
|
47
|
+
public static final byte OP_SIPUSH = 17;
|
|
48
|
+
public static final byte OP_LDC = 18;
|
|
49
|
+
public static final byte OP_LDC_W = 19;
|
|
50
|
+
public static final byte OP_LDC2_W = 20;
|
|
51
|
+
public static final byte OP_ILOAD = 21;
|
|
52
|
+
public static final byte OP_LLOAD = 22;
|
|
53
|
+
public static final byte OP_FLOAD = 23;
|
|
54
|
+
public static final byte OP_DLOAD = 24;
|
|
55
|
+
public static final byte OP_ALOAD = 25;
|
|
56
|
+
public static final byte OP_ILOAD_0 = 26;
|
|
57
|
+
public static final byte OP_ILOAD_1 = 27;
|
|
58
|
+
public static final byte OP_ILOAD_2 = 28;
|
|
59
|
+
public static final byte OP_ILOAD_3 = 29;
|
|
60
|
+
public static final byte OP_LLOAD_0 = 30;
|
|
61
|
+
public static final byte OP_LLOAD_1 = 31;
|
|
62
|
+
public static final byte OP_LLOAD_2 = 32;
|
|
63
|
+
public static final byte OP_LLOAD_3 = 33;
|
|
64
|
+
public static final byte OP_FLOAD_0 = 34;
|
|
65
|
+
public static final byte OP_FLOAD_1 = 35;
|
|
66
|
+
public static final byte OP_FLOAD_2 = 36;
|
|
67
|
+
public static final byte OP_FLOAD_3 = 37;
|
|
68
|
+
public static final byte OP_DLOAD_0 = 38;
|
|
69
|
+
public static final byte OP_DLOAD_1 = 39;
|
|
70
|
+
public static final byte OP_DLOAD_2 = 40;
|
|
71
|
+
public static final byte OP_DLOAD_3 = 41;
|
|
72
|
+
public static final byte OP_ALOAD_0 = 42;
|
|
73
|
+
public static final byte OP_ALOAD_1 = 43;
|
|
74
|
+
public static final byte OP_ALOAD_2 = 44;
|
|
75
|
+
public static final byte OP_ALOAD_3 = 45;
|
|
76
|
+
public static final byte OP_IALOAD = 46;
|
|
77
|
+
public static final byte OP_LALOAD = 47;
|
|
78
|
+
public static final byte OP_FALOAD = 48;
|
|
79
|
+
public static final byte OP_DALOAD = 49;
|
|
80
|
+
public static final byte OP_AALOAD = 50;
|
|
81
|
+
public static final byte OP_BALOAD = 51;
|
|
82
|
+
public static final byte OP_CALOAD = 52;
|
|
83
|
+
public static final byte OP_SALOAD = 53;
|
|
84
|
+
public static final byte OP_ISTORE = 54;
|
|
85
|
+
public static final byte OP_LSTORE = 55;
|
|
86
|
+
public static final byte OP_FSTORE = 56;
|
|
87
|
+
public static final byte OP_DSTORE = 57;
|
|
88
|
+
public static final byte OP_ASTORE = 58;
|
|
89
|
+
public static final byte OP_ISTORE_0 = 59;
|
|
90
|
+
public static final byte OP_ISTORE_1 = 60;
|
|
91
|
+
public static final byte OP_ISTORE_2 = 61;
|
|
92
|
+
public static final byte OP_ISTORE_3 = 62;
|
|
93
|
+
public static final byte OP_LSTORE_0 = 63;
|
|
94
|
+
public static final byte OP_LSTORE_1 = 64;
|
|
95
|
+
public static final byte OP_LSTORE_2 = 65;
|
|
96
|
+
public static final byte OP_LSTORE_3 = 66;
|
|
97
|
+
public static final byte OP_FSTORE_0 = 67;
|
|
98
|
+
public static final byte OP_FSTORE_1 = 68;
|
|
99
|
+
public static final byte OP_FSTORE_2 = 69;
|
|
100
|
+
public static final byte OP_FSTORE_3 = 70;
|
|
101
|
+
public static final byte OP_DSTORE_0 = 71;
|
|
102
|
+
public static final byte OP_DSTORE_1 = 72;
|
|
103
|
+
public static final byte OP_DSTORE_2 = 73;
|
|
104
|
+
public static final byte OP_DSTORE_3 = 74;
|
|
105
|
+
public static final byte OP_ASTORE_0 = 75;
|
|
106
|
+
public static final byte OP_ASTORE_1 = 76;
|
|
107
|
+
public static final byte OP_ASTORE_2 = 77;
|
|
108
|
+
public static final byte OP_ASTORE_3 = 78;
|
|
109
|
+
public static final byte OP_IASTORE = 79;
|
|
110
|
+
public static final byte OP_LASTORE = 80;
|
|
111
|
+
public static final byte OP_FASTORE = 81;
|
|
112
|
+
public static final byte OP_DASTORE = 82;
|
|
113
|
+
public static final byte OP_AASTORE = 83;
|
|
114
|
+
public static final byte OP_BASTORE = 84;
|
|
115
|
+
public static final byte OP_CASTORE = 85;
|
|
116
|
+
public static final byte OP_SASTORE = 86;
|
|
117
|
+
public static final byte OP_POP = 87;
|
|
118
|
+
public static final byte OP_POP2 = 88;
|
|
119
|
+
public static final byte OP_DUP = 89;
|
|
120
|
+
public static final byte OP_DUP_X1 = 90;
|
|
121
|
+
public static final byte OP_DUP_X2 = 91;
|
|
122
|
+
public static final byte OP_DUP2 = 92;
|
|
123
|
+
public static final byte OP_DUP2_X1 = 93;
|
|
124
|
+
public static final byte OP_DUP2_X2 = 94;
|
|
125
|
+
public static final byte OP_SWAP = 95;
|
|
126
|
+
public static final byte OP_IADD = 96;
|
|
127
|
+
public static final byte OP_LADD = 97;
|
|
128
|
+
public static final byte OP_FADD = 98;
|
|
129
|
+
public static final byte OP_DADD = 99;
|
|
130
|
+
public static final byte OP_ISUB = 100;
|
|
131
|
+
public static final byte OP_LSUB = 101;
|
|
132
|
+
public static final byte OP_FSUB = 102;
|
|
133
|
+
public static final byte OP_DSUB = 103;
|
|
134
|
+
public static final byte OP_IMUL = 104;
|
|
135
|
+
public static final byte OP_LMUL = 105;
|
|
136
|
+
public static final byte OP_FMUL = 106;
|
|
137
|
+
public static final byte OP_DMUL = 107;
|
|
138
|
+
public static final byte OP_IDIV = 108;
|
|
139
|
+
public static final byte OP_LDIV = 109;
|
|
140
|
+
public static final byte OP_FDIV = 110;
|
|
141
|
+
public static final byte OP_DDIV = 111;
|
|
142
|
+
public static final byte OP_IREM = 112;
|
|
143
|
+
public static final byte OP_LREM = 113;
|
|
144
|
+
public static final byte OP_FREM = 114;
|
|
145
|
+
public static final byte OP_DREM = 115;
|
|
146
|
+
public static final byte OP_INEG = 116;
|
|
147
|
+
public static final byte OP_LNEG = 117;
|
|
148
|
+
public static final byte OP_FNEG = 118;
|
|
149
|
+
public static final byte OP_DNEG = 119;
|
|
150
|
+
public static final byte OP_ISHL = 120;
|
|
151
|
+
public static final byte OP_LSHL = 121;
|
|
152
|
+
public static final byte OP_ISHR = 122;
|
|
153
|
+
public static final byte OP_LSHR = 123;
|
|
154
|
+
public static final byte OP_IUSHR = 124;
|
|
155
|
+
public static final byte OP_LUSHR = 125;
|
|
156
|
+
public static final byte OP_IAND = 126;
|
|
157
|
+
public static final byte OP_LAND = 127;
|
|
158
|
+
public static final byte OP_IOR = -128;
|
|
159
|
+
public static final byte OP_LOR = -127;
|
|
160
|
+
public static final byte OP_IXOR = -126;
|
|
161
|
+
public static final byte OP_LXOR = -125;
|
|
162
|
+
public static final byte OP_IINC = -124;
|
|
163
|
+
public static final byte OP_I2L = -123;
|
|
164
|
+
public static final byte OP_I2F = -122;
|
|
165
|
+
public static final byte OP_I2D = -121;
|
|
166
|
+
public static final byte OP_L2I = -120;
|
|
167
|
+
public static final byte OP_L2F = -119;
|
|
168
|
+
public static final byte OP_L2D = -118;
|
|
169
|
+
public static final byte OP_F2I = -117;
|
|
170
|
+
public static final byte OP_F2L = -116;
|
|
171
|
+
public static final byte OP_F2D = -115;
|
|
172
|
+
public static final byte OP_D2I = -114;
|
|
173
|
+
public static final byte OP_D2L = -113;
|
|
174
|
+
public static final byte OP_D2F = -112;
|
|
175
|
+
public static final byte OP_I2B = -111;
|
|
176
|
+
public static final byte OP_I2C = -110;
|
|
177
|
+
public static final byte OP_I2S = -109;
|
|
178
|
+
public static final byte OP_LCMP = -108;
|
|
179
|
+
public static final byte OP_FCMPL = -107;
|
|
180
|
+
public static final byte OP_FCMPG = -106;
|
|
181
|
+
public static final byte OP_DCMPL = -105;
|
|
182
|
+
public static final byte OP_DCMPG = -104;
|
|
183
|
+
public static final byte OP_IFEQ = -103;
|
|
184
|
+
public static final byte OP_IFNE = -102;
|
|
185
|
+
public static final byte OP_IFLT = -101;
|
|
186
|
+
public static final byte OP_IFGE = -100;
|
|
187
|
+
public static final byte OP_IFGT = -99;
|
|
188
|
+
public static final byte OP_IFLE = -98;
|
|
189
|
+
public static final byte OP_IFICMPEQ = -97;
|
|
190
|
+
public static final byte OP_IFICMPNE = -96;
|
|
191
|
+
public static final byte OP_IFICMPLT = -95;
|
|
192
|
+
public static final byte OP_IFICMPGE = -94;
|
|
193
|
+
public static final byte OP_IFICMPGT = -93;
|
|
194
|
+
public static final byte OP_IFICMPLE = -92;
|
|
195
|
+
public static final byte OP_IFACMPEQ = -91;
|
|
196
|
+
public static final byte OP_IFACMPNE = -90;
|
|
197
|
+
public static final byte OP_GOTO = -89;
|
|
198
|
+
public static final byte OP_JSR = -88;
|
|
199
|
+
public static final byte OP_RET = -87;
|
|
200
|
+
public static final byte OP_TABLESWITCH = -86;
|
|
201
|
+
public static final byte OP_LOOKUPSWITCH = -85;
|
|
202
|
+
public static final byte OP_IRETURN = -84;
|
|
203
|
+
public static final byte OP_LRETURN = -83;
|
|
204
|
+
public static final byte OP_FRETURN = -82;
|
|
205
|
+
public static final byte OP_DRETURN = -81;
|
|
206
|
+
public static final byte OP_ARETURN = -80;
|
|
207
|
+
public static final byte OP_RETURN = -79;
|
|
208
|
+
public static final byte OP_GETSTATIC = -78;
|
|
209
|
+
public static final byte OP_PUTSTATIC = -77;
|
|
210
|
+
public static final byte OP_GETFIELD = -76;
|
|
211
|
+
public static final byte OP_PUTFIELD = -75;
|
|
212
|
+
public static final byte OP_INVOKEVIRTUAL = -74;
|
|
213
|
+
public static final byte OP_INVOKESPECIAL = -73;
|
|
214
|
+
public static final byte OP_INVOKESTATIC = -72;
|
|
215
|
+
public static final byte OP_INVOKEINTERFACE = -71;
|
|
216
|
+
public static final byte OP_INVOKEDYNAMIC = -70;
|
|
217
|
+
public static final byte OP_NEW = -69;
|
|
218
|
+
public static final byte OP_NEWARRAY = -68;
|
|
219
|
+
public static final byte OP_ANEWARRAY = -67;
|
|
220
|
+
public static final byte OP_ARRAYLENGTH = -66;
|
|
221
|
+
public static final byte OP_ATHROW = -65;
|
|
222
|
+
public static final byte OP_CHECKCAST = -64;
|
|
223
|
+
public static final byte OP_INSTANCEOF = -63;
|
|
224
|
+
public static final byte OP_MONITORENTER = -62;
|
|
225
|
+
public static final byte OP_MONITOREXIT = -61;
|
|
226
|
+
public static final byte OP_WIDE = -60;
|
|
227
|
+
public static final byte OP_MULTIANEWARRAY = -59;
|
|
228
|
+
public static final byte OP_IFNULL = -58;
|
|
229
|
+
public static final byte OP_IFNONNULL = -57;
|
|
230
|
+
public static final byte OP_GOTO_W = -56;
|
|
231
|
+
public static final byte OP_JSR_W = -55;
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
public static final String[] NAMES =
|
|
235
|
+
{
|
|
236
|
+
"nop",
|
|
237
|
+
"aconst_null",
|
|
238
|
+
"iconst_m1",
|
|
239
|
+
"iconst_0",
|
|
240
|
+
"iconst_1",
|
|
241
|
+
"iconst_2",
|
|
242
|
+
"iconst_3",
|
|
243
|
+
"iconst_4",
|
|
244
|
+
"iconst_5",
|
|
245
|
+
"lconst_0",
|
|
246
|
+
"lconst_1",
|
|
247
|
+
"fconst_0",
|
|
248
|
+
"fconst_1",
|
|
249
|
+
"fconst_2",
|
|
250
|
+
"dconst_0",
|
|
251
|
+
"dconst_1",
|
|
252
|
+
"bipush",
|
|
253
|
+
"sipush",
|
|
254
|
+
"ldc",
|
|
255
|
+
"ldc_w",
|
|
256
|
+
"ldc2_w",
|
|
257
|
+
"iload",
|
|
258
|
+
"lload",
|
|
259
|
+
"fload",
|
|
260
|
+
"dload",
|
|
261
|
+
"aload",
|
|
262
|
+
"iload_0",
|
|
263
|
+
"iload_1",
|
|
264
|
+
"iload_2",
|
|
265
|
+
"iload_3",
|
|
266
|
+
"lload_0",
|
|
267
|
+
"lload_1",
|
|
268
|
+
"lload_2",
|
|
269
|
+
"lload_3",
|
|
270
|
+
"fload_0",
|
|
271
|
+
"fload_1",
|
|
272
|
+
"fload_2",
|
|
273
|
+
"fload_3",
|
|
274
|
+
"dload_0",
|
|
275
|
+
"dload_1",
|
|
276
|
+
"dload_2",
|
|
277
|
+
"dload_3",
|
|
278
|
+
"aload_0",
|
|
279
|
+
"aload_1",
|
|
280
|
+
"aload_2",
|
|
281
|
+
"aload_3",
|
|
282
|
+
"iaload",
|
|
283
|
+
"laload",
|
|
284
|
+
"faload",
|
|
285
|
+
"daload",
|
|
286
|
+
"aaload",
|
|
287
|
+
"baload",
|
|
288
|
+
"caload",
|
|
289
|
+
"saload",
|
|
290
|
+
"istore",
|
|
291
|
+
"lstore",
|
|
292
|
+
"fstore",
|
|
293
|
+
"dstore",
|
|
294
|
+
"astore",
|
|
295
|
+
"istore_0",
|
|
296
|
+
"istore_1",
|
|
297
|
+
"istore_2",
|
|
298
|
+
"istore_3",
|
|
299
|
+
"lstore_0",
|
|
300
|
+
"lstore_1",
|
|
301
|
+
"lstore_2",
|
|
302
|
+
"lstore_3",
|
|
303
|
+
"fstore_0",
|
|
304
|
+
"fstore_1",
|
|
305
|
+
"fstore_2",
|
|
306
|
+
"fstore_3",
|
|
307
|
+
"dstore_0",
|
|
308
|
+
"dstore_1",
|
|
309
|
+
"dstore_2",
|
|
310
|
+
"dstore_3",
|
|
311
|
+
"astore_0",
|
|
312
|
+
"astore_1",
|
|
313
|
+
"astore_2",
|
|
314
|
+
"astore_3",
|
|
315
|
+
"iastore",
|
|
316
|
+
"lastore",
|
|
317
|
+
"fastore",
|
|
318
|
+
"dastore",
|
|
319
|
+
"aastore",
|
|
320
|
+
"bastore",
|
|
321
|
+
"castore",
|
|
322
|
+
"sastore",
|
|
323
|
+
"pop",
|
|
324
|
+
"pop2",
|
|
325
|
+
"dup",
|
|
326
|
+
"dup_x1",
|
|
327
|
+
"dup_x2",
|
|
328
|
+
"dup2",
|
|
329
|
+
"dup2_x1",
|
|
330
|
+
"dup2_x2",
|
|
331
|
+
"swap",
|
|
332
|
+
"iadd",
|
|
333
|
+
"ladd",
|
|
334
|
+
"fadd",
|
|
335
|
+
"dadd",
|
|
336
|
+
"isub",
|
|
337
|
+
"lsub",
|
|
338
|
+
"fsub",
|
|
339
|
+
"dsub",
|
|
340
|
+
"imul",
|
|
341
|
+
"lmul",
|
|
342
|
+
"fmul",
|
|
343
|
+
"dmul",
|
|
344
|
+
"idiv",
|
|
345
|
+
"ldiv",
|
|
346
|
+
"fdiv",
|
|
347
|
+
"ddiv",
|
|
348
|
+
"irem",
|
|
349
|
+
"lrem",
|
|
350
|
+
"frem",
|
|
351
|
+
"drem",
|
|
352
|
+
"ineg",
|
|
353
|
+
"lneg",
|
|
354
|
+
"fneg",
|
|
355
|
+
"dneg",
|
|
356
|
+
"ishl",
|
|
357
|
+
"lshl",
|
|
358
|
+
"ishr",
|
|
359
|
+
"lshr",
|
|
360
|
+
"iushr",
|
|
361
|
+
"lushr",
|
|
362
|
+
"iand",
|
|
363
|
+
"land",
|
|
364
|
+
"ior",
|
|
365
|
+
"lor",
|
|
366
|
+
"ixor",
|
|
367
|
+
"lxor",
|
|
368
|
+
"iinc",
|
|
369
|
+
"i2l",
|
|
370
|
+
"i2f",
|
|
371
|
+
"i2d",
|
|
372
|
+
"l2i",
|
|
373
|
+
"l2f",
|
|
374
|
+
"l2d",
|
|
375
|
+
"f2i",
|
|
376
|
+
"f2l",
|
|
377
|
+
"f2d",
|
|
378
|
+
"d2i",
|
|
379
|
+
"d2l",
|
|
380
|
+
"d2f",
|
|
381
|
+
"i2b",
|
|
382
|
+
"i2c",
|
|
383
|
+
"i2s",
|
|
384
|
+
"lcmp",
|
|
385
|
+
"fcmpl",
|
|
386
|
+
"fcmpg",
|
|
387
|
+
"dcmpl",
|
|
388
|
+
"dcmpg",
|
|
389
|
+
"ifeq",
|
|
390
|
+
"ifne",
|
|
391
|
+
"iflt",
|
|
392
|
+
"ifge",
|
|
393
|
+
"ifgt",
|
|
394
|
+
"ifle",
|
|
395
|
+
"ificmpeq",
|
|
396
|
+
"ificmpne",
|
|
397
|
+
"ificmplt",
|
|
398
|
+
"ificmpge",
|
|
399
|
+
"ificmpgt",
|
|
400
|
+
"ificmple",
|
|
401
|
+
"ifacmpeq",
|
|
402
|
+
"ifacmpne",
|
|
403
|
+
"goto",
|
|
404
|
+
"jsr",
|
|
405
|
+
"ret",
|
|
406
|
+
"tableswitch",
|
|
407
|
+
"lookupswitch",
|
|
408
|
+
"ireturn",
|
|
409
|
+
"lreturn",
|
|
410
|
+
"freturn",
|
|
411
|
+
"dreturn",
|
|
412
|
+
"areturn",
|
|
413
|
+
"return",
|
|
414
|
+
"getstatic",
|
|
415
|
+
"putstatic",
|
|
416
|
+
"getfield",
|
|
417
|
+
"putfield",
|
|
418
|
+
"invokevirtual",
|
|
419
|
+
"invokespecial",
|
|
420
|
+
"invokestatic",
|
|
421
|
+
"invokeinterface",
|
|
422
|
+
"invokedynamic",
|
|
423
|
+
"new",
|
|
424
|
+
"newarray",
|
|
425
|
+
"anewarray",
|
|
426
|
+
"arraylength",
|
|
427
|
+
"athrow",
|
|
428
|
+
"checkcast",
|
|
429
|
+
"instanceof",
|
|
430
|
+
"monitorenter",
|
|
431
|
+
"monitorexit",
|
|
432
|
+
"wide",
|
|
433
|
+
"multianewarray",
|
|
434
|
+
"ifnull",
|
|
435
|
+
"ifnonnull",
|
|
436
|
+
"goto_w",
|
|
437
|
+
"jsr_w",
|
|
438
|
+
};
|
|
439
|
+
|
|
440
|
+
|
|
441
|
+
public static final byte ARRAY_T_BOOLEAN = 4;
|
|
442
|
+
public static final byte ARRAY_T_CHAR = 5;
|
|
443
|
+
public static final byte ARRAY_T_FLOAT = 6;
|
|
444
|
+
public static final byte ARRAY_T_DOUBLE = 7;
|
|
445
|
+
public static final byte ARRAY_T_BYTE = 8;
|
|
446
|
+
public static final byte ARRAY_T_SHORT = 9;
|
|
447
|
+
public static final byte ARRAY_T_INT = 10;
|
|
448
|
+
public static final byte ARRAY_T_LONG = 11;
|
|
449
|
+
}
|
|
@@ -0,0 +1,300 @@
|
|
|
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.instruction;
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* This class provides methods to create and reuse Instruction objects.
|
|
25
|
+
*
|
|
26
|
+
* @author Eric Lafortune
|
|
27
|
+
*/
|
|
28
|
+
public class InstructionFactory
|
|
29
|
+
{
|
|
30
|
+
/**
|
|
31
|
+
* Creates a new Instruction from the data in the byte array, starting
|
|
32
|
+
* at the given index.
|
|
33
|
+
*/
|
|
34
|
+
public static Instruction create(byte[] code, int offset)
|
|
35
|
+
{
|
|
36
|
+
Instruction instruction;
|
|
37
|
+
|
|
38
|
+
int index = offset;
|
|
39
|
+
byte opcode = code[index++];
|
|
40
|
+
|
|
41
|
+
boolean wide = false;
|
|
42
|
+
if (opcode == InstructionConstants.OP_WIDE)
|
|
43
|
+
{
|
|
44
|
+
opcode = code[index++];
|
|
45
|
+
wide = true;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
switch (opcode)
|
|
49
|
+
{
|
|
50
|
+
// Simple instructions.
|
|
51
|
+
case InstructionConstants.OP_NOP:
|
|
52
|
+
case InstructionConstants.OP_ACONST_NULL:
|
|
53
|
+
case InstructionConstants.OP_ICONST_M1:
|
|
54
|
+
case InstructionConstants.OP_ICONST_0:
|
|
55
|
+
case InstructionConstants.OP_ICONST_1:
|
|
56
|
+
case InstructionConstants.OP_ICONST_2:
|
|
57
|
+
case InstructionConstants.OP_ICONST_3:
|
|
58
|
+
case InstructionConstants.OP_ICONST_4:
|
|
59
|
+
case InstructionConstants.OP_ICONST_5:
|
|
60
|
+
case InstructionConstants.OP_LCONST_0:
|
|
61
|
+
case InstructionConstants.OP_LCONST_1:
|
|
62
|
+
case InstructionConstants.OP_FCONST_0:
|
|
63
|
+
case InstructionConstants.OP_FCONST_1:
|
|
64
|
+
case InstructionConstants.OP_FCONST_2:
|
|
65
|
+
case InstructionConstants.OP_DCONST_0:
|
|
66
|
+
case InstructionConstants.OP_DCONST_1:
|
|
67
|
+
|
|
68
|
+
case InstructionConstants.OP_BIPUSH:
|
|
69
|
+
case InstructionConstants.OP_SIPUSH:
|
|
70
|
+
|
|
71
|
+
case InstructionConstants.OP_IALOAD:
|
|
72
|
+
case InstructionConstants.OP_LALOAD:
|
|
73
|
+
case InstructionConstants.OP_FALOAD:
|
|
74
|
+
case InstructionConstants.OP_DALOAD:
|
|
75
|
+
case InstructionConstants.OP_AALOAD:
|
|
76
|
+
case InstructionConstants.OP_BALOAD:
|
|
77
|
+
case InstructionConstants.OP_CALOAD:
|
|
78
|
+
case InstructionConstants.OP_SALOAD:
|
|
79
|
+
|
|
80
|
+
case InstructionConstants.OP_IASTORE:
|
|
81
|
+
case InstructionConstants.OP_LASTORE:
|
|
82
|
+
case InstructionConstants.OP_FASTORE:
|
|
83
|
+
case InstructionConstants.OP_DASTORE:
|
|
84
|
+
case InstructionConstants.OP_AASTORE:
|
|
85
|
+
case InstructionConstants.OP_BASTORE:
|
|
86
|
+
case InstructionConstants.OP_CASTORE:
|
|
87
|
+
case InstructionConstants.OP_SASTORE:
|
|
88
|
+
case InstructionConstants.OP_POP:
|
|
89
|
+
case InstructionConstants.OP_POP2:
|
|
90
|
+
case InstructionConstants.OP_DUP:
|
|
91
|
+
case InstructionConstants.OP_DUP_X1:
|
|
92
|
+
case InstructionConstants.OP_DUP_X2:
|
|
93
|
+
case InstructionConstants.OP_DUP2:
|
|
94
|
+
case InstructionConstants.OP_DUP2_X1:
|
|
95
|
+
case InstructionConstants.OP_DUP2_X2:
|
|
96
|
+
case InstructionConstants.OP_SWAP:
|
|
97
|
+
case InstructionConstants.OP_IADD:
|
|
98
|
+
case InstructionConstants.OP_LADD:
|
|
99
|
+
case InstructionConstants.OP_FADD:
|
|
100
|
+
case InstructionConstants.OP_DADD:
|
|
101
|
+
case InstructionConstants.OP_ISUB:
|
|
102
|
+
case InstructionConstants.OP_LSUB:
|
|
103
|
+
case InstructionConstants.OP_FSUB:
|
|
104
|
+
case InstructionConstants.OP_DSUB:
|
|
105
|
+
case InstructionConstants.OP_IMUL:
|
|
106
|
+
case InstructionConstants.OP_LMUL:
|
|
107
|
+
case InstructionConstants.OP_FMUL:
|
|
108
|
+
case InstructionConstants.OP_DMUL:
|
|
109
|
+
case InstructionConstants.OP_IDIV:
|
|
110
|
+
case InstructionConstants.OP_LDIV:
|
|
111
|
+
case InstructionConstants.OP_FDIV:
|
|
112
|
+
case InstructionConstants.OP_DDIV:
|
|
113
|
+
case InstructionConstants.OP_IREM:
|
|
114
|
+
case InstructionConstants.OP_LREM:
|
|
115
|
+
case InstructionConstants.OP_FREM:
|
|
116
|
+
case InstructionConstants.OP_DREM:
|
|
117
|
+
case InstructionConstants.OP_INEG:
|
|
118
|
+
case InstructionConstants.OP_LNEG:
|
|
119
|
+
case InstructionConstants.OP_FNEG:
|
|
120
|
+
case InstructionConstants.OP_DNEG:
|
|
121
|
+
case InstructionConstants.OP_ISHL:
|
|
122
|
+
case InstructionConstants.OP_LSHL:
|
|
123
|
+
case InstructionConstants.OP_ISHR:
|
|
124
|
+
case InstructionConstants.OP_LSHR:
|
|
125
|
+
case InstructionConstants.OP_IUSHR:
|
|
126
|
+
case InstructionConstants.OP_LUSHR:
|
|
127
|
+
case InstructionConstants.OP_IAND:
|
|
128
|
+
case InstructionConstants.OP_LAND:
|
|
129
|
+
case InstructionConstants.OP_IOR:
|
|
130
|
+
case InstructionConstants.OP_LOR:
|
|
131
|
+
case InstructionConstants.OP_IXOR:
|
|
132
|
+
case InstructionConstants.OP_LXOR:
|
|
133
|
+
|
|
134
|
+
case InstructionConstants.OP_I2L:
|
|
135
|
+
case InstructionConstants.OP_I2F:
|
|
136
|
+
case InstructionConstants.OP_I2D:
|
|
137
|
+
case InstructionConstants.OP_L2I:
|
|
138
|
+
case InstructionConstants.OP_L2F:
|
|
139
|
+
case InstructionConstants.OP_L2D:
|
|
140
|
+
case InstructionConstants.OP_F2I:
|
|
141
|
+
case InstructionConstants.OP_F2L:
|
|
142
|
+
case InstructionConstants.OP_F2D:
|
|
143
|
+
case InstructionConstants.OP_D2I:
|
|
144
|
+
case InstructionConstants.OP_D2L:
|
|
145
|
+
case InstructionConstants.OP_D2F:
|
|
146
|
+
case InstructionConstants.OP_I2B:
|
|
147
|
+
case InstructionConstants.OP_I2C:
|
|
148
|
+
case InstructionConstants.OP_I2S:
|
|
149
|
+
case InstructionConstants.OP_LCMP:
|
|
150
|
+
case InstructionConstants.OP_FCMPL:
|
|
151
|
+
case InstructionConstants.OP_FCMPG:
|
|
152
|
+
case InstructionConstants.OP_DCMPL:
|
|
153
|
+
case InstructionConstants.OP_DCMPG:
|
|
154
|
+
|
|
155
|
+
case InstructionConstants.OP_IRETURN:
|
|
156
|
+
case InstructionConstants.OP_LRETURN:
|
|
157
|
+
case InstructionConstants.OP_FRETURN:
|
|
158
|
+
case InstructionConstants.OP_DRETURN:
|
|
159
|
+
case InstructionConstants.OP_ARETURN:
|
|
160
|
+
case InstructionConstants.OP_RETURN:
|
|
161
|
+
|
|
162
|
+
case InstructionConstants.OP_NEWARRAY:
|
|
163
|
+
case InstructionConstants.OP_ARRAYLENGTH:
|
|
164
|
+
case InstructionConstants.OP_ATHROW:
|
|
165
|
+
|
|
166
|
+
case InstructionConstants.OP_MONITORENTER:
|
|
167
|
+
case InstructionConstants.OP_MONITOREXIT:
|
|
168
|
+
instruction = new SimpleInstruction();
|
|
169
|
+
break;
|
|
170
|
+
|
|
171
|
+
// Instructions with a contant pool index.
|
|
172
|
+
case InstructionConstants.OP_LDC:
|
|
173
|
+
case InstructionConstants.OP_LDC_W:
|
|
174
|
+
case InstructionConstants.OP_LDC2_W:
|
|
175
|
+
|
|
176
|
+
case InstructionConstants.OP_GETSTATIC:
|
|
177
|
+
case InstructionConstants.OP_PUTSTATIC:
|
|
178
|
+
case InstructionConstants.OP_GETFIELD:
|
|
179
|
+
case InstructionConstants.OP_PUTFIELD:
|
|
180
|
+
|
|
181
|
+
case InstructionConstants.OP_INVOKEVIRTUAL:
|
|
182
|
+
case InstructionConstants.OP_INVOKESPECIAL:
|
|
183
|
+
case InstructionConstants.OP_INVOKESTATIC:
|
|
184
|
+
case InstructionConstants.OP_INVOKEINTERFACE:
|
|
185
|
+
case InstructionConstants.OP_INVOKEDYNAMIC:
|
|
186
|
+
|
|
187
|
+
case InstructionConstants.OP_NEW:
|
|
188
|
+
case InstructionConstants.OP_ANEWARRAY:
|
|
189
|
+
case InstructionConstants.OP_CHECKCAST:
|
|
190
|
+
case InstructionConstants.OP_INSTANCEOF:
|
|
191
|
+
case InstructionConstants.OP_MULTIANEWARRAY:
|
|
192
|
+
instruction = new ConstantInstruction();
|
|
193
|
+
break;
|
|
194
|
+
|
|
195
|
+
// Instructions with a local variable index.
|
|
196
|
+
case InstructionConstants.OP_ILOAD:
|
|
197
|
+
case InstructionConstants.OP_LLOAD:
|
|
198
|
+
case InstructionConstants.OP_FLOAD:
|
|
199
|
+
case InstructionConstants.OP_DLOAD:
|
|
200
|
+
case InstructionConstants.OP_ALOAD:
|
|
201
|
+
case InstructionConstants.OP_ILOAD_0:
|
|
202
|
+
case InstructionConstants.OP_ILOAD_1:
|
|
203
|
+
case InstructionConstants.OP_ILOAD_2:
|
|
204
|
+
case InstructionConstants.OP_ILOAD_3:
|
|
205
|
+
case InstructionConstants.OP_LLOAD_0:
|
|
206
|
+
case InstructionConstants.OP_LLOAD_1:
|
|
207
|
+
case InstructionConstants.OP_LLOAD_2:
|
|
208
|
+
case InstructionConstants.OP_LLOAD_3:
|
|
209
|
+
case InstructionConstants.OP_FLOAD_0:
|
|
210
|
+
case InstructionConstants.OP_FLOAD_1:
|
|
211
|
+
case InstructionConstants.OP_FLOAD_2:
|
|
212
|
+
case InstructionConstants.OP_FLOAD_3:
|
|
213
|
+
case InstructionConstants.OP_DLOAD_0:
|
|
214
|
+
case InstructionConstants.OP_DLOAD_1:
|
|
215
|
+
case InstructionConstants.OP_DLOAD_2:
|
|
216
|
+
case InstructionConstants.OP_DLOAD_3:
|
|
217
|
+
case InstructionConstants.OP_ALOAD_0:
|
|
218
|
+
case InstructionConstants.OP_ALOAD_1:
|
|
219
|
+
case InstructionConstants.OP_ALOAD_2:
|
|
220
|
+
case InstructionConstants.OP_ALOAD_3:
|
|
221
|
+
|
|
222
|
+
case InstructionConstants.OP_ISTORE:
|
|
223
|
+
case InstructionConstants.OP_LSTORE:
|
|
224
|
+
case InstructionConstants.OP_FSTORE:
|
|
225
|
+
case InstructionConstants.OP_DSTORE:
|
|
226
|
+
case InstructionConstants.OP_ASTORE:
|
|
227
|
+
case InstructionConstants.OP_ISTORE_0:
|
|
228
|
+
case InstructionConstants.OP_ISTORE_1:
|
|
229
|
+
case InstructionConstants.OP_ISTORE_2:
|
|
230
|
+
case InstructionConstants.OP_ISTORE_3:
|
|
231
|
+
case InstructionConstants.OP_LSTORE_0:
|
|
232
|
+
case InstructionConstants.OP_LSTORE_1:
|
|
233
|
+
case InstructionConstants.OP_LSTORE_2:
|
|
234
|
+
case InstructionConstants.OP_LSTORE_3:
|
|
235
|
+
case InstructionConstants.OP_FSTORE_0:
|
|
236
|
+
case InstructionConstants.OP_FSTORE_1:
|
|
237
|
+
case InstructionConstants.OP_FSTORE_2:
|
|
238
|
+
case InstructionConstants.OP_FSTORE_3:
|
|
239
|
+
case InstructionConstants.OP_DSTORE_0:
|
|
240
|
+
case InstructionConstants.OP_DSTORE_1:
|
|
241
|
+
case InstructionConstants.OP_DSTORE_2:
|
|
242
|
+
case InstructionConstants.OP_DSTORE_3:
|
|
243
|
+
case InstructionConstants.OP_ASTORE_0:
|
|
244
|
+
case InstructionConstants.OP_ASTORE_1:
|
|
245
|
+
case InstructionConstants.OP_ASTORE_2:
|
|
246
|
+
case InstructionConstants.OP_ASTORE_3:
|
|
247
|
+
|
|
248
|
+
case InstructionConstants.OP_IINC:
|
|
249
|
+
|
|
250
|
+
case InstructionConstants.OP_RET:
|
|
251
|
+
instruction = new VariableInstruction(wide);
|
|
252
|
+
break;
|
|
253
|
+
|
|
254
|
+
// Instructions with a branch offset operand.
|
|
255
|
+
case InstructionConstants.OP_IFEQ:
|
|
256
|
+
case InstructionConstants.OP_IFNE:
|
|
257
|
+
case InstructionConstants.OP_IFLT:
|
|
258
|
+
case InstructionConstants.OP_IFGE:
|
|
259
|
+
case InstructionConstants.OP_IFGT:
|
|
260
|
+
case InstructionConstants.OP_IFLE:
|
|
261
|
+
case InstructionConstants.OP_IFICMPEQ:
|
|
262
|
+
case InstructionConstants.OP_IFICMPNE:
|
|
263
|
+
case InstructionConstants.OP_IFICMPLT:
|
|
264
|
+
case InstructionConstants.OP_IFICMPGE:
|
|
265
|
+
case InstructionConstants.OP_IFICMPGT:
|
|
266
|
+
case InstructionConstants.OP_IFICMPLE:
|
|
267
|
+
case InstructionConstants.OP_IFACMPEQ:
|
|
268
|
+
case InstructionConstants.OP_IFACMPNE:
|
|
269
|
+
case InstructionConstants.OP_GOTO:
|
|
270
|
+
case InstructionConstants.OP_JSR:
|
|
271
|
+
|
|
272
|
+
case InstructionConstants.OP_IFNULL:
|
|
273
|
+
case InstructionConstants.OP_IFNONNULL:
|
|
274
|
+
|
|
275
|
+
case InstructionConstants.OP_GOTO_W:
|
|
276
|
+
case InstructionConstants.OP_JSR_W:
|
|
277
|
+
instruction = new BranchInstruction();
|
|
278
|
+
break;
|
|
279
|
+
|
|
280
|
+
// The tableswitch instruction.
|
|
281
|
+
case InstructionConstants.OP_TABLESWITCH:
|
|
282
|
+
instruction = new TableSwitchInstruction();
|
|
283
|
+
break;
|
|
284
|
+
|
|
285
|
+
// The lookupswitch instruction.
|
|
286
|
+
case InstructionConstants.OP_LOOKUPSWITCH:
|
|
287
|
+
instruction = new LookUpSwitchInstruction();
|
|
288
|
+
break;
|
|
289
|
+
|
|
290
|
+
default:
|
|
291
|
+
throw new IllegalArgumentException("Unknown instruction opcode ["+opcode+"] at offset "+offset);
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
instruction.opcode = opcode;
|
|
295
|
+
|
|
296
|
+
instruction.readInfo(code, index);
|
|
297
|
+
|
|
298
|
+
return instruction;
|
|
299
|
+
}
|
|
300
|
+
}
|