sometsome 3.10.46 → 3.10.50.33

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.
Files changed (733) hide show
  1. checksums.yaml +4 -4
  2. metadata +13 -963
  3. data/lib/hola.rb +0 -5
  4. data/lib/proguard4.7/README +0 -33
  5. data/lib/proguard4.7/bin/proguard.bat +0 -14
  6. data/lib/proguard4.7/bin/proguard.sh +0 -11
  7. data/lib/proguard4.7/bin/proguardgui.bat +0 -14
  8. data/lib/proguard4.7/bin/proguardgui.sh +0 -15
  9. data/lib/proguard4.7/bin/retrace.bat +0 -14
  10. data/lib/proguard4.7/bin/retrace.sh +0 -12
  11. data/lib/proguard4.7/build/build.sh +0 -94
  12. data/lib/proguard4.7/build/build.xml +0 -171
  13. data/lib/proguard4.7/build/makefile +0 -94
  14. data/lib/proguard4.7/docs/FAQ.html +0 -253
  15. data/lib/proguard4.7/docs/GPL.html +0 -406
  16. data/lib/proguard4.7/docs/GPL_exception.html +0 -56
  17. data/lib/proguard4.7/docs/acknowledgements.html +0 -76
  18. data/lib/proguard4.7/docs/alternatives.html +0 -699
  19. data/lib/proguard4.7/docs/checkmark.gif +0 -0
  20. data/lib/proguard4.7/docs/downloads.html +0 -623
  21. data/lib/proguard4.7/docs/drop1.gif +0 -0
  22. data/lib/proguard4.7/docs/drop2.gif +0 -0
  23. data/lib/proguard4.7/docs/drop3.gif +0 -0
  24. data/lib/proguard4.7/docs/favicon.ico +0 -0
  25. data/lib/proguard4.7/docs/feedback.html +0 -120
  26. data/lib/proguard4.7/docs/index.html +0 -92
  27. data/lib/proguard4.7/docs/license.html +0 -60
  28. data/lib/proguard4.7/docs/main.html +0 -102
  29. data/lib/proguard4.7/docs/manual/ant.html +0 -634
  30. data/lib/proguard4.7/docs/manual/attention.gif +0 -0
  31. data/lib/proguard4.7/docs/manual/examples.html +0 -1504
  32. data/lib/proguard4.7/docs/manual/gui.html +0 -479
  33. data/lib/proguard4.7/docs/manual/index.html +0 -51
  34. data/lib/proguard4.7/docs/manual/introduction.html +0 -173
  35. data/lib/proguard4.7/docs/manual/limitations.html +0 -69
  36. data/lib/proguard4.7/docs/manual/optimizations.html +0 -172
  37. data/lib/proguard4.7/docs/manual/refcard.html +0 -486
  38. data/lib/proguard4.7/docs/manual/retrace/examples.html +0 -345
  39. data/lib/proguard4.7/docs/manual/retrace/index.html +0 -37
  40. data/lib/proguard4.7/docs/manual/retrace/introduction.html +0 -79
  41. data/lib/proguard4.7/docs/manual/retrace/usage.html +0 -127
  42. data/lib/proguard4.7/docs/manual/sections.html +0 -60
  43. data/lib/proguard4.7/docs/manual/style.css +0 -105
  44. data/lib/proguard4.7/docs/manual/troubleshooting.html +0 -729
  45. data/lib/proguard4.7/docs/manual/usage.html +0 -1243
  46. data/lib/proguard4.7/docs/manual/wtk.html +0 -70
  47. data/lib/proguard4.7/docs/quality.html +0 -56
  48. data/lib/proguard4.7/docs/results.html +0 -170
  49. data/lib/proguard4.7/docs/saikoalogo.png +0 -0
  50. data/lib/proguard4.7/docs/screenshot_console.gif +0 -0
  51. data/lib/proguard4.7/docs/screenshot_console_small.gif +0 -0
  52. data/lib/proguard4.7/docs/screenshot_gui1.gif +0 -0
  53. data/lib/proguard4.7/docs/screenshot_gui2.gif +0 -0
  54. data/lib/proguard4.7/docs/screenshot_gui3.gif +0 -0
  55. data/lib/proguard4.7/docs/screenshot_gui4.gif +0 -0
  56. data/lib/proguard4.7/docs/screenshot_gui5.gif +0 -0
  57. data/lib/proguard4.7/docs/screenshot_gui6.gif +0 -0
  58. data/lib/proguard4.7/docs/screenshot_gui7.gif +0 -0
  59. data/lib/proguard4.7/docs/screenshot_gui8.gif +0 -0
  60. data/lib/proguard4.7/docs/screenshots.html +0 -67
  61. data/lib/proguard4.7/docs/screenshots_gui_small.gif +0 -0
  62. data/lib/proguard4.7/docs/sections.html +0 -64
  63. data/lib/proguard4.7/docs/sflogo.png +0 -0
  64. data/lib/proguard4.7/docs/steel.gif +0 -0
  65. data/lib/proguard4.7/docs/style.css +0 -223
  66. data/lib/proguard4.7/docs/testimonials.html +0 -133
  67. data/lib/proguard4.7/docs/title.gif +0 -0
  68. data/lib/proguard4.7/docs/title.html +0 -17
  69. data/lib/proguard4.7/examples/android.pro +0 -149
  70. data/lib/proguard4.7/examples/annotations/examples.pro +0 -60
  71. data/lib/proguard4.7/examples/annotations/examples/Applet.java +0 -22
  72. data/lib/proguard4.7/examples/annotations/examples/Application.java +0 -20
  73. data/lib/proguard4.7/examples/annotations/examples/Bean.java +0 -56
  74. data/lib/proguard4.7/examples/annotations/examples/NativeCallBack.java +0 -44
  75. data/lib/proguard4.7/examples/annotations/lib/annotations.jar +0 -0
  76. data/lib/proguard4.7/examples/annotations/lib/annotations.pro +0 -118
  77. data/lib/proguard4.7/examples/annotations/src/proguard/annotation/Keep.java +0 -18
  78. data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepApplication.java +0 -18
  79. data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepClassMemberNames.java +0 -18
  80. data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepClassMembers.java +0 -18
  81. data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepGettersSetters.java +0 -18
  82. data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepImplementations.java +0 -18
  83. data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepName.java +0 -18
  84. data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepPublicClassMemberNames.java +0 -18
  85. data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepPublicClassMembers.java +0 -18
  86. data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepPublicGettersSetters.java +0 -18
  87. data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepPublicImplementations.java +0 -18
  88. data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepPublicProtectedClassMemberNames.java +0 -18
  89. data/lib/proguard4.7/examples/annotations/src/proguard/annotation/KeepPublicProtectedClassMembers.java +0 -19
  90. data/lib/proguard4.7/examples/ant/android-8.xml +0 -177
  91. data/lib/proguard4.7/examples/ant/applets.xml +0 -88
  92. data/lib/proguard4.7/examples/ant/applications1.xml +0 -15
  93. data/lib/proguard4.7/examples/ant/applications2.xml +0 -74
  94. data/lib/proguard4.7/examples/ant/applications3.xml +0 -98
  95. data/lib/proguard4.7/examples/ant/library.xml +0 -102
  96. data/lib/proguard4.7/examples/ant/midlets.xml +0 -52
  97. data/lib/proguard4.7/examples/ant/proguard.xml +0 -78
  98. data/lib/proguard4.7/examples/ant/servlets.xml +0 -88
  99. data/lib/proguard4.7/examples/applets.pro +0 -69
  100. data/lib/proguard4.7/examples/applications.pro +0 -75
  101. data/lib/proguard4.7/examples/dictionaries/compact.txt +0 -18
  102. data/lib/proguard4.7/examples/dictionaries/keywords.txt +0 -58
  103. data/lib/proguard4.7/examples/dictionaries/shakespeare.txt +0 -23
  104. data/lib/proguard4.7/examples/dictionaries/windows.txt +0 -209
  105. data/lib/proguard4.7/examples/library.pro +0 -79
  106. data/lib/proguard4.7/examples/midlets.pro +0 -67
  107. data/lib/proguard4.7/examples/proguard.pro +0 -57
  108. data/lib/proguard4.7/examples/proguardall.pro +0 -62
  109. data/lib/proguard4.7/examples/proguardgui.pro +0 -50
  110. data/lib/proguard4.7/examples/retrace.pro +0 -43
  111. data/lib/proguard4.7/examples/scala.pro +0 -132
  112. data/lib/proguard4.7/examples/servlets.pro +0 -70
  113. data/lib/proguard4.7/lib/proguard.jar +0 -0
  114. data/lib/proguard4.7/lib/proguardgui.jar +0 -0
  115. data/lib/proguard4.7/lib/retrace.jar +0 -0
  116. data/lib/proguard4.7/src/proguard/ArgumentWordReader.java +0 -111
  117. data/lib/proguard4.7/src/proguard/ClassPath.java +0 -94
  118. data/lib/proguard4.7/src/proguard/ClassPathEntry.java +0 -282
  119. data/lib/proguard4.7/src/proguard/ClassSpecification.java +0 -259
  120. data/lib/proguard4.7/src/proguard/ClassSpecificationVisitorFactory.java +0 -503
  121. data/lib/proguard4.7/src/proguard/Configuration.java +0 -328
  122. data/lib/proguard4.7/src/proguard/ConfigurationConstants.java +0 -123
  123. data/lib/proguard4.7/src/proguard/ConfigurationParser.java +0 -1285
  124. data/lib/proguard4.7/src/proguard/ConfigurationWriter.java +0 -651
  125. data/lib/proguard4.7/src/proguard/DataEntryReaderFactory.java +0 -141
  126. data/lib/proguard4.7/src/proguard/DataEntryWriterFactory.java +0 -150
  127. data/lib/proguard4.7/src/proguard/DescriptorKeepChecker.java +0 -169
  128. data/lib/proguard4.7/src/proguard/DuplicateClassPrinter.java +0 -63
  129. data/lib/proguard4.7/src/proguard/FileWordReader.java +0 -55
  130. data/lib/proguard4.7/src/proguard/FullyQualifiedClassNameChecker.java +0 -191
  131. data/lib/proguard4.7/src/proguard/GPL.java +0 -197
  132. data/lib/proguard4.7/src/proguard/Initializer.java +0 -424
  133. data/lib/proguard4.7/src/proguard/InputReader.java +0 -233
  134. data/lib/proguard4.7/src/proguard/KeepClassMemberChecker.java +0 -87
  135. data/lib/proguard4.7/src/proguard/KeepClassSpecification.java +0 -137
  136. data/lib/proguard4.7/src/proguard/LineWordReader.java +0 -74
  137. data/lib/proguard4.7/src/proguard/MANIFEST.MF +0 -2
  138. data/lib/proguard4.7/src/proguard/MemberSpecification.java +0 -114
  139. data/lib/proguard4.7/src/proguard/OutputWriter.java +0 -296
  140. data/lib/proguard4.7/src/proguard/ParseException.java +0 -51
  141. data/lib/proguard4.7/src/proguard/ProGuard.java +0 -512
  142. data/lib/proguard4.7/src/proguard/SeedPrinter.java +0 -97
  143. data/lib/proguard4.7/src/proguard/SubclassedClassFilter.java +0 -62
  144. data/lib/proguard4.7/src/proguard/Targeter.java +0 -88
  145. data/lib/proguard4.7/src/proguard/UpToDateChecker.java +0 -232
  146. data/lib/proguard4.7/src/proguard/WordReader.java +0 -387
  147. data/lib/proguard4.7/src/proguard/ant/ClassPathElement.java +0 -191
  148. data/lib/proguard4.7/src/proguard/ant/ClassSpecificationElement.java +0 -258
  149. data/lib/proguard4.7/src/proguard/ant/ConfigurationElement.java +0 -53
  150. data/lib/proguard4.7/src/proguard/ant/ConfigurationTask.java +0 -441
  151. data/lib/proguard4.7/src/proguard/ant/FilterElement.java +0 -85
  152. data/lib/proguard4.7/src/proguard/ant/KeepSpecificationElement.java +0 -87
  153. data/lib/proguard4.7/src/proguard/ant/MemberSpecificationElement.java +0 -218
  154. data/lib/proguard4.7/src/proguard/ant/ProGuardTask.java +0 -352
  155. data/lib/proguard4.7/src/proguard/ant/package.html +0 -3
  156. data/lib/proguard4.7/src/proguard/ant/task.properties +0 -2
  157. data/lib/proguard4.7/src/proguard/classfile/ClassConstants.java +0 -316
  158. data/lib/proguard4.7/src/proguard/classfile/ClassPool.java +0 -152
  159. data/lib/proguard4.7/src/proguard/classfile/Clazz.java +0 -261
  160. data/lib/proguard4.7/src/proguard/classfile/Field.java +0 -32
  161. data/lib/proguard4.7/src/proguard/classfile/LibraryClass.java +0 -548
  162. data/lib/proguard4.7/src/proguard/classfile/LibraryField.java +0 -77
  163. data/lib/proguard4.7/src/proguard/classfile/LibraryMember.java +0 -108
  164. data/lib/proguard4.7/src/proguard/classfile/LibraryMethod.java +0 -83
  165. data/lib/proguard4.7/src/proguard/classfile/Member.java +0 -57
  166. data/lib/proguard4.7/src/proguard/classfile/Method.java +0 -32
  167. data/lib/proguard4.7/src/proguard/classfile/ProgramClass.java +0 -572
  168. data/lib/proguard4.7/src/proguard/classfile/ProgramField.java +0 -93
  169. data/lib/proguard4.7/src/proguard/classfile/ProgramMember.java +0 -168
  170. data/lib/proguard4.7/src/proguard/classfile/ProgramMethod.java +0 -99
  171. data/lib/proguard4.7/src/proguard/classfile/VisitorAccepter.java +0 -47
  172. data/lib/proguard4.7/src/proguard/classfile/attribute/Attribute.java +0 -142
  173. data/lib/proguard4.7/src/proguard/classfile/attribute/BootstrapMethodInfo.java +0 -89
  174. data/lib/proguard4.7/src/proguard/classfile/attribute/BootstrapMethodsAttribute.java +0 -95
  175. data/lib/proguard4.7/src/proguard/classfile/attribute/CodeAttribute.java +0 -202
  176. data/lib/proguard4.7/src/proguard/classfile/attribute/ConstantValueAttribute.java +0 -62
  177. data/lib/proguard4.7/src/proguard/classfile/attribute/DeprecatedAttribute.java +0 -66
  178. data/lib/proguard4.7/src/proguard/classfile/attribute/EnclosingMethodAttribute.java +0 -132
  179. data/lib/proguard4.7/src/proguard/classfile/attribute/ExceptionInfo.java +0 -100
  180. data/lib/proguard4.7/src/proguard/classfile/attribute/ExceptionsAttribute.java +0 -80
  181. data/lib/proguard4.7/src/proguard/classfile/attribute/InnerClassesAttribute.java +0 -80
  182. data/lib/proguard4.7/src/proguard/classfile/attribute/InnerClassesInfo.java +0 -119
  183. data/lib/proguard4.7/src/proguard/classfile/attribute/LineNumberInfo.java +0 -50
  184. data/lib/proguard4.7/src/proguard/classfile/attribute/LineNumberTableAttribute.java +0 -100
  185. data/lib/proguard4.7/src/proguard/classfile/attribute/LocalVariableInfo.java +0 -99
  186. data/lib/proguard4.7/src/proguard/classfile/attribute/LocalVariableTableAttribute.java +0 -79
  187. data/lib/proguard4.7/src/proguard/classfile/attribute/LocalVariableTypeInfo.java +0 -107
  188. data/lib/proguard4.7/src/proguard/classfile/attribute/LocalVariableTypeTableAttribute.java +0 -79
  189. data/lib/proguard4.7/src/proguard/classfile/attribute/SignatureAttribute.java +0 -100
  190. data/lib/proguard4.7/src/proguard/classfile/attribute/SourceDirAttribute.java +0 -62
  191. data/lib/proguard4.7/src/proguard/classfile/attribute/SourceFileAttribute.java +0 -62
  192. data/lib/proguard4.7/src/proguard/classfile/attribute/SyntheticAttribute.java +0 -66
  193. data/lib/proguard4.7/src/proguard/classfile/attribute/UnknownAttribute.java +0 -82
  194. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/Annotation.java +0 -143
  195. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/AnnotationDefaultAttribute.java +0 -73
  196. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/AnnotationElementValue.java +0 -76
  197. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/AnnotationsAttribute.java +0 -100
  198. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/ArrayElementValue.java +0 -82
  199. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/ClassElementValue.java +0 -95
  200. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/ConstantElementValue.java +0 -71
  201. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/ElementValue.java +0 -126
  202. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/EnumConstantElementValue.java +0 -99
  203. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/ParameterAnnotationsAttribute.java +0 -83
  204. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/RuntimeInvisibleAnnotationsAttribute.java +0 -70
  205. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/RuntimeInvisibleParameterAnnotationsAttribute.java +0 -62
  206. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/RuntimeVisibleAnnotationsAttribute.java +0 -70
  207. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/RuntimeVisibleParameterAnnotationsAttribute.java +0 -62
  208. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/package.html +0 -4
  209. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/AllAnnotationVisitor.java +0 -100
  210. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/AnnotatedClassVisitor.java +0 -62
  211. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/AnnotationToMemberVisitor.java +0 -62
  212. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/AnnotationTypeFilter.java +0 -102
  213. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/AnnotationVisitor.java +0 -40
  214. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/ElementValueVisitor.java +0 -51
  215. data/lib/proguard4.7/src/proguard/classfile/attribute/annotation/visitor/package.html +0 -3
  216. data/lib/proguard4.7/src/proguard/classfile/attribute/package.html +0 -3
  217. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/DoubleType.java +0 -66
  218. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/FloatType.java +0 -66
  219. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/FullFrame.java +0 -202
  220. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/IntegerType.java +0 -66
  221. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/LessZeroFrame.java +0 -103
  222. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/LongType.java +0 -66
  223. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/MoreZeroFrame.java +0 -161
  224. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/NullType.java +0 -66
  225. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/ObjectType.java +0 -107
  226. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/SameOneFrame.java +0 -115
  227. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/SameZeroFrame.java +0 -74
  228. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/StackMapAttribute.java +0 -91
  229. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/StackMapFrame.java +0 -117
  230. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/StackMapTableAttribute.java +0 -93
  231. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/TopType.java +0 -66
  232. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/UninitializedThisType.java +0 -66
  233. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/UninitializedType.java +0 -106
  234. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/VerificationType.java +0 -103
  235. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/VerificationTypeFactory.java +0 -112
  236. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/visitor/StackMapFrameVisitor.java +0 -40
  237. data/lib/proguard4.7/src/proguard/classfile/attribute/preverification/visitor/VerificationTypeVisitor.java +0 -65
  238. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/AllAttributeVisitor.java +0 -117
  239. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/AllBootstrapMethodInfoVisitor.java +0 -55
  240. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/AllExceptionInfoVisitor.java +0 -55
  241. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/AllInnerClassesInfoVisitor.java +0 -55
  242. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/AttributeNameFilter.java +0 -368
  243. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/AttributeVisitor.java +0 -90
  244. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/BootstrapMethodInfoVisitor.java +0 -40
  245. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/ExceptionInfoVisitor.java +0 -37
  246. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/InnerClassesInfoVisitor.java +0 -38
  247. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/LineNumberInfoVisitor.java +0 -38
  248. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/LocalVariableInfoVisitor.java +0 -38
  249. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/LocalVariableTypeInfoVisitor.java +0 -38
  250. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/MultiAttributeVisitor.java +0 -365
  251. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/NonEmptyAttributeFilter.java +0 -293
  252. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/RequiredAttributeFilter.java +0 -360
  253. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/StackSizeComputer.java +0 -378
  254. data/lib/proguard4.7/src/proguard/classfile/attribute/visitor/package.html +0 -3
  255. data/lib/proguard4.7/src/proguard/classfile/constant/ClassConstant.java +0 -105
  256. data/lib/proguard4.7/src/proguard/classfile/constant/Constant.java +0 -68
  257. data/lib/proguard4.7/src/proguard/classfile/constant/DoubleConstant.java +0 -82
  258. data/lib/proguard4.7/src/proguard/classfile/constant/FieldrefConstant.java +0 -71
  259. data/lib/proguard4.7/src/proguard/classfile/constant/FloatConstant.java +0 -82
  260. data/lib/proguard4.7/src/proguard/classfile/constant/IntegerConstant.java +0 -82
  261. data/lib/proguard4.7/src/proguard/classfile/constant/InterfaceMethodrefConstant.java +0 -71
  262. data/lib/proguard4.7/src/proguard/classfile/constant/InvokeDynamicConstant.java +0 -148
  263. data/lib/proguard4.7/src/proguard/classfile/constant/LongConstant.java +0 -82
  264. data/lib/proguard4.7/src/proguard/classfile/constant/MethodHandleConstant.java +0 -124
  265. data/lib/proguard4.7/src/proguard/classfile/constant/MethodTypeConstant.java +0 -93
  266. data/lib/proguard4.7/src/proguard/classfile/constant/MethodrefConstant.java +0 -71
  267. data/lib/proguard4.7/src/proguard/classfile/constant/NameAndTypeConstant.java +0 -119
  268. data/lib/proguard4.7/src/proguard/classfile/constant/RefConstant.java +0 -130
  269. data/lib/proguard4.7/src/proguard/classfile/constant/StringConstant.java +0 -135
  270. data/lib/proguard4.7/src/proguard/classfile/constant/Utf8Constant.java +0 -285
  271. data/lib/proguard4.7/src/proguard/classfile/constant/visitor/AllConstantVisitor.java +0 -53
  272. data/lib/proguard4.7/src/proguard/classfile/constant/visitor/BootstrapMethodHandleTraveler.java +0 -100
  273. data/lib/proguard4.7/src/proguard/classfile/constant/visitor/ConstantTagFilter.java +0 -86
  274. data/lib/proguard4.7/src/proguard/classfile/constant/visitor/ConstantVisitor.java +0 -49
  275. data/lib/proguard4.7/src/proguard/classfile/constant/visitor/ExceptClassConstantFilter.java +0 -69
  276. data/lib/proguard4.7/src/proguard/classfile/constant/visitor/MethodrefTraveler.java +0 -60
  277. data/lib/proguard4.7/src/proguard/classfile/constant/visitor/package.html +0 -3
  278. data/lib/proguard4.7/src/proguard/classfile/editor/AccessFixer.java +0 -180
  279. data/lib/proguard4.7/src/proguard/classfile/editor/AnnotationAdder.java +0 -153
  280. data/lib/proguard4.7/src/proguard/classfile/editor/AnnotationsAttributeEditor.java +0 -67
  281. data/lib/proguard4.7/src/proguard/classfile/editor/AttributeAdder.java +0 -457
  282. data/lib/proguard4.7/src/proguard/classfile/editor/AttributeSorter.java +0 -89
  283. data/lib/proguard4.7/src/proguard/classfile/editor/AttributesEditor.java +0 -269
  284. data/lib/proguard4.7/src/proguard/classfile/editor/BridgeMethodFixer.java +0 -117
  285. data/lib/proguard4.7/src/proguard/classfile/editor/ClassEditor.java +0 -255
  286. data/lib/proguard4.7/src/proguard/classfile/editor/ClassElementSorter.java +0 -52
  287. data/lib/proguard4.7/src/proguard/classfile/editor/ClassMemberSorter.java +0 -69
  288. data/lib/proguard4.7/src/proguard/classfile/editor/ClassReferenceFixer.java +0 -546
  289. data/lib/proguard4.7/src/proguard/classfile/editor/CodeAttributeComposer.java +0 -843
  290. data/lib/proguard4.7/src/proguard/classfile/editor/CodeAttributeEditor.java +0 -1104
  291. data/lib/proguard4.7/src/proguard/classfile/editor/CodeAttributeEditorResetter.java +0 -60
  292. data/lib/proguard4.7/src/proguard/classfile/editor/ComparableConstant.java +0 -249
  293. data/lib/proguard4.7/src/proguard/classfile/editor/ConstantAdder.java +0 -239
  294. data/lib/proguard4.7/src/proguard/classfile/editor/ConstantPoolEditor.java +0 -782
  295. data/lib/proguard4.7/src/proguard/classfile/editor/ConstantPoolRemapper.java +0 -662
  296. data/lib/proguard4.7/src/proguard/classfile/editor/ConstantPoolShrinker.java +0 -578
  297. data/lib/proguard4.7/src/proguard/classfile/editor/ConstantPoolSorter.java +0 -123
  298. data/lib/proguard4.7/src/proguard/classfile/editor/ElementValueAdder.java +0 -217
  299. data/lib/proguard4.7/src/proguard/classfile/editor/ElementValuesEditor.java +0 -238
  300. data/lib/proguard4.7/src/proguard/classfile/editor/ExceptionAdder.java +0 -65
  301. data/lib/proguard4.7/src/proguard/classfile/editor/ExceptionInfoAdder.java +0 -67
  302. data/lib/proguard4.7/src/proguard/classfile/editor/ExceptionsAttributeEditor.java +0 -68
  303. data/lib/proguard4.7/src/proguard/classfile/editor/InnerClassesAccessFixer.java +0 -83
  304. data/lib/proguard4.7/src/proguard/classfile/editor/InstructionAdder.java +0 -76
  305. data/lib/proguard4.7/src/proguard/classfile/editor/InstructionWriter.java +0 -278
  306. data/lib/proguard4.7/src/proguard/classfile/editor/InterfaceAdder.java +0 -62
  307. data/lib/proguard4.7/src/proguard/classfile/editor/InterfaceSorter.java +0 -152
  308. data/lib/proguard4.7/src/proguard/classfile/editor/InterfacesEditor.java +0 -122
  309. data/lib/proguard4.7/src/proguard/classfile/editor/LineNumberInfoAdder.java +0 -59
  310. data/lib/proguard4.7/src/proguard/classfile/editor/LineNumberTableAttributeEditor.java +0 -67
  311. data/lib/proguard4.7/src/proguard/classfile/editor/LocalVariableInfoAdder.java +0 -67
  312. data/lib/proguard4.7/src/proguard/classfile/editor/LocalVariableTableAttributeEditor.java +0 -67
  313. data/lib/proguard4.7/src/proguard/classfile/editor/LocalVariableTypeInfoAdder.java +0 -68
  314. data/lib/proguard4.7/src/proguard/classfile/editor/LocalVariableTypeTableAttributeEditor.java +0 -68
  315. data/lib/proguard4.7/src/proguard/classfile/editor/MemberAdder.java +0 -288
  316. data/lib/proguard4.7/src/proguard/classfile/editor/MemberReferenceFixer.java +0 -447
  317. data/lib/proguard4.7/src/proguard/classfile/editor/MethodInvocationFixer.java +0 -243
  318. data/lib/proguard4.7/src/proguard/classfile/editor/NameAndTypeShrinker.java +0 -188
  319. data/lib/proguard4.7/src/proguard/classfile/editor/NamedAttributeDeleter.java +0 -54
  320. data/lib/proguard4.7/src/proguard/classfile/editor/ParameterAnnotationsAttributeEditor.java +0 -71
  321. data/lib/proguard4.7/src/proguard/classfile/editor/StackSizeUpdater.java +0 -54
  322. data/lib/proguard4.7/src/proguard/classfile/editor/SubclassAdder.java +0 -59
  323. data/lib/proguard4.7/src/proguard/classfile/editor/SubclassToAdder.java +0 -60
  324. data/lib/proguard4.7/src/proguard/classfile/editor/Utf8Shrinker.java +0 -455
  325. data/lib/proguard4.7/src/proguard/classfile/editor/VariableCleaner.java +0 -267
  326. data/lib/proguard4.7/src/proguard/classfile/editor/VariableEditor.java +0 -130
  327. data/lib/proguard4.7/src/proguard/classfile/editor/VariableRemapper.java +0 -156
  328. data/lib/proguard4.7/src/proguard/classfile/editor/VariableSizeUpdater.java +0 -105
  329. data/lib/proguard4.7/src/proguard/classfile/editor/package.html +0 -3
  330. data/lib/proguard4.7/src/proguard/classfile/instruction/BranchInstruction.java +0 -180
  331. data/lib/proguard4.7/src/proguard/classfile/instruction/ConstantInstruction.java +0 -309
  332. data/lib/proguard4.7/src/proguard/classfile/instruction/Instruction.java +0 -920
  333. data/lib/proguard4.7/src/proguard/classfile/instruction/InstructionConstants.java +0 -449
  334. data/lib/proguard4.7/src/proguard/classfile/instruction/InstructionFactory.java +0 -300
  335. data/lib/proguard4.7/src/proguard/classfile/instruction/InstructionUtil.java +0 -67
  336. data/lib/proguard4.7/src/proguard/classfile/instruction/LookUpSwitchInstruction.java +0 -135
  337. data/lib/proguard4.7/src/proguard/classfile/instruction/SimpleInstruction.java +0 -255
  338. data/lib/proguard4.7/src/proguard/classfile/instruction/SwitchInstruction.java +0 -83
  339. data/lib/proguard4.7/src/proguard/classfile/instruction/TableSwitchInstruction.java +0 -139
  340. data/lib/proguard4.7/src/proguard/classfile/instruction/VariableInstruction.java +0 -372
  341. data/lib/proguard4.7/src/proguard/classfile/instruction/package.html +0 -9
  342. data/lib/proguard4.7/src/proguard/classfile/instruction/visitor/AllInstructionVisitor.java +0 -56
  343. data/lib/proguard4.7/src/proguard/classfile/instruction/visitor/InstructionCounter.java +0 -59
  344. data/lib/proguard4.7/src/proguard/classfile/instruction/visitor/InstructionVisitor.java +0 -42
  345. data/lib/proguard4.7/src/proguard/classfile/instruction/visitor/MultiInstructionVisitor.java +0 -131
  346. data/lib/proguard4.7/src/proguard/classfile/instruction/visitor/package.html +0 -3
  347. data/lib/proguard4.7/src/proguard/classfile/io/LibraryClassReader.java +0 -383
  348. data/lib/proguard4.7/src/proguard/classfile/io/ProgramClassReader.java +0 -919
  349. data/lib/proguard4.7/src/proguard/classfile/io/ProgramClassWriter.java +0 -735
  350. data/lib/proguard4.7/src/proguard/classfile/io/RuntimeDataInput.java +0 -223
  351. data/lib/proguard4.7/src/proguard/classfile/io/RuntimeDataOutput.java +0 -224
  352. data/lib/proguard4.7/src/proguard/classfile/io/package.html +0 -3
  353. data/lib/proguard4.7/src/proguard/classfile/package.html +0 -15
  354. data/lib/proguard4.7/src/proguard/classfile/util/AccessUtil.java +0 -105
  355. data/lib/proguard4.7/src/proguard/classfile/util/ClassReferenceInitializer.java +0 -559
  356. data/lib/proguard4.7/src/proguard/classfile/util/ClassSubHierarchyInitializer.java +0 -77
  357. data/lib/proguard4.7/src/proguard/classfile/util/ClassSuperHierarchyInitializer.java +0 -163
  358. data/lib/proguard4.7/src/proguard/classfile/util/ClassUtil.java +0 -1227
  359. data/lib/proguard4.7/src/proguard/classfile/util/DescriptorClassEnumeration.java +0 -236
  360. data/lib/proguard4.7/src/proguard/classfile/util/DynamicClassReferenceInitializer.java +0 -485
  361. data/lib/proguard4.7/src/proguard/classfile/util/DynamicMemberReferenceInitializer.java +0 -944
  362. data/lib/proguard4.7/src/proguard/classfile/util/ExternalTypeEnumeration.java +0 -106
  363. data/lib/proguard4.7/src/proguard/classfile/util/InstructionSequenceMatcher.java +0 -754
  364. data/lib/proguard4.7/src/proguard/classfile/util/InternalTypeEnumeration.java +0 -204
  365. data/lib/proguard4.7/src/proguard/classfile/util/MemberFinder.java +0 -197
  366. data/lib/proguard4.7/src/proguard/classfile/util/MethodLinker.java +0 -160
  367. data/lib/proguard4.7/src/proguard/classfile/util/SimplifiedVisitor.java +0 -834
  368. data/lib/proguard4.7/src/proguard/classfile/util/StringReferenceInitializer.java +0 -90
  369. data/lib/proguard4.7/src/proguard/classfile/util/StringSharer.java +0 -172
  370. data/lib/proguard4.7/src/proguard/classfile/util/WarningPrinter.java +0 -136
  371. data/lib/proguard4.7/src/proguard/classfile/util/package.html +0 -3
  372. data/lib/proguard4.7/src/proguard/classfile/visitor/AllClassVisitor.java +0 -47
  373. data/lib/proguard4.7/src/proguard/classfile/visitor/AllFieldVisitor.java +0 -55
  374. data/lib/proguard4.7/src/proguard/classfile/visitor/AllMemberVisitor.java +0 -57
  375. data/lib/proguard4.7/src/proguard/classfile/visitor/AllMethodVisitor.java +0 -55
  376. data/lib/proguard4.7/src/proguard/classfile/visitor/BottomClassFilter.java +0 -69
  377. data/lib/proguard4.7/src/proguard/classfile/visitor/ClassAccessFilter.java +0 -88
  378. data/lib/proguard4.7/src/proguard/classfile/visitor/ClassCleaner.java +0 -275
  379. data/lib/proguard4.7/src/proguard/classfile/visitor/ClassCollector.java +0 -58
  380. data/lib/proguard4.7/src/proguard/classfile/visitor/ClassCounter.java +0 -56
  381. data/lib/proguard4.7/src/proguard/classfile/visitor/ClassHierarchyTraveler.java +0 -91
  382. data/lib/proguard4.7/src/proguard/classfile/visitor/ClassNameFilter.java +0 -112
  383. data/lib/proguard4.7/src/proguard/classfile/visitor/ClassPoolFiller.java +0 -55
  384. data/lib/proguard4.7/src/proguard/classfile/visitor/ClassPoolVisitor.java +0 -37
  385. data/lib/proguard4.7/src/proguard/classfile/visitor/ClassPresenceFilter.java +0 -93
  386. data/lib/proguard4.7/src/proguard/classfile/visitor/ClassPrinter.java +0 -1011
  387. data/lib/proguard4.7/src/proguard/classfile/visitor/ClassVersionFilter.java +0 -85
  388. data/lib/proguard4.7/src/proguard/classfile/visitor/ClassVersionSetter.java +0 -83
  389. data/lib/proguard4.7/src/proguard/classfile/visitor/ClassVisitor.java +0 -36
  390. data/lib/proguard4.7/src/proguard/classfile/visitor/ConcreteClassDownTraveler.java +0 -100
  391. data/lib/proguard4.7/src/proguard/classfile/visitor/DotClassClassVisitor.java +0 -89
  392. data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptClassFilter.java +0 -69
  393. data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptClassesFilter.java +0 -90
  394. data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptionCounter.java +0 -52
  395. data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptionExcludedOffsetFilter.java +0 -64
  396. data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptionHandlerConstantVisitor.java +0 -62
  397. data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptionHandlerFilter.java +0 -70
  398. data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptionOffsetFilter.java +0 -64
  399. data/lib/proguard4.7/src/proguard/classfile/visitor/ExceptionRangeFilter.java +0 -68
  400. data/lib/proguard4.7/src/proguard/classfile/visitor/ImplementedClassConstantFilter.java +0 -69
  401. data/lib/proguard4.7/src/proguard/classfile/visitor/ImplementedClassFilter.java +0 -71
  402. data/lib/proguard4.7/src/proguard/classfile/visitor/ImplementingClassConstantFilter.java +0 -70
  403. data/lib/proguard4.7/src/proguard/classfile/visitor/LibraryClassFilter.java +0 -60
  404. data/lib/proguard4.7/src/proguard/classfile/visitor/LibraryMemberFilter.java +0 -73
  405. data/lib/proguard4.7/src/proguard/classfile/visitor/MemberAccessFilter.java +0 -122
  406. data/lib/proguard4.7/src/proguard/classfile/visitor/MemberClassAccessFilter.java +0 -106
  407. data/lib/proguard4.7/src/proguard/classfile/visitor/MemberCollector.java +0 -59
  408. data/lib/proguard4.7/src/proguard/classfile/visitor/MemberCounter.java +0 -72
  409. data/lib/proguard4.7/src/proguard/classfile/visitor/MemberDescriptorFilter.java +0 -113
  410. data/lib/proguard4.7/src/proguard/classfile/visitor/MemberNameFilter.java +0 -113
  411. data/lib/proguard4.7/src/proguard/classfile/visitor/MemberToClassVisitor.java +0 -90
  412. data/lib/proguard4.7/src/proguard/classfile/visitor/MemberVisitor.java +0 -40
  413. data/lib/proguard4.7/src/proguard/classfile/visitor/MethodImplementationFilter.java +0 -70
  414. data/lib/proguard4.7/src/proguard/classfile/visitor/MethodImplementationTraveler.java +0 -128
  415. data/lib/proguard4.7/src/proguard/classfile/visitor/MultiClassPoolVisitor.java +0 -88
  416. data/lib/proguard4.7/src/proguard/classfile/visitor/MultiClassVisitor.java +0 -97
  417. data/lib/proguard4.7/src/proguard/classfile/visitor/MultiMemberVisitor.java +0 -113
  418. data/lib/proguard4.7/src/proguard/classfile/visitor/NamedClassVisitor.java +0 -49
  419. data/lib/proguard4.7/src/proguard/classfile/visitor/NamedFieldVisitor.java +0 -61
  420. data/lib/proguard4.7/src/proguard/classfile/visitor/NamedMethodVisitor.java +0 -61
  421. data/lib/proguard4.7/src/proguard/classfile/visitor/ProgramClassFilter.java +0 -60
  422. data/lib/proguard4.7/src/proguard/classfile/visitor/ProgramMemberFilter.java +0 -73
  423. data/lib/proguard4.7/src/proguard/classfile/visitor/ReferencedClassVisitor.java +0 -255
  424. data/lib/proguard4.7/src/proguard/classfile/visitor/ReferencedMemberVisitor.java +0 -73
  425. data/lib/proguard4.7/src/proguard/classfile/visitor/SimilarMemberVisitor.java +0 -125
  426. data/lib/proguard4.7/src/proguard/classfile/visitor/SimpleClassPrinter.java +0 -167
  427. data/lib/proguard4.7/src/proguard/classfile/visitor/SubclassFilter.java +0 -91
  428. data/lib/proguard4.7/src/proguard/classfile/visitor/SubclassTraveler.java +0 -60
  429. data/lib/proguard4.7/src/proguard/classfile/visitor/VariableClassVisitor.java +0 -78
  430. data/lib/proguard4.7/src/proguard/classfile/visitor/VariableMemberVisitor.java +0 -96
  431. data/lib/proguard4.7/src/proguard/classfile/visitor/package.html +0 -40
  432. data/lib/proguard4.7/src/proguard/evaluation/BasicBranchUnit.java +0 -126
  433. data/lib/proguard4.7/src/proguard/evaluation/BasicInvocationUnit.java +0 -425
  434. data/lib/proguard4.7/src/proguard/evaluation/BranchUnit.java +0 -63
  435. data/lib/proguard4.7/src/proguard/evaluation/ClassConstantValueFactory.java +0 -53
  436. data/lib/proguard4.7/src/proguard/evaluation/ConstantValueFactory.java +0 -113
  437. data/lib/proguard4.7/src/proguard/evaluation/InvocationUnit.java +0 -62
  438. data/lib/proguard4.7/src/proguard/evaluation/Processor.java +0 -908
  439. data/lib/proguard4.7/src/proguard/evaluation/Stack.java +0 -560
  440. data/lib/proguard4.7/src/proguard/evaluation/TracedStack.java +0 -342
  441. data/lib/proguard4.7/src/proguard/evaluation/TracedVariables.java +0 -199
  442. data/lib/proguard4.7/src/proguard/evaluation/Variables.java +0 -347
  443. data/lib/proguard4.7/src/proguard/evaluation/value/Category1Value.java +0 -41
  444. data/lib/proguard4.7/src/proguard/evaluation/value/Category2Value.java +0 -41
  445. data/lib/proguard4.7/src/proguard/evaluation/value/ComparisonValue.java +0 -69
  446. data/lib/proguard4.7/src/proguard/evaluation/value/CompositeDoubleValue.java +0 -81
  447. data/lib/proguard4.7/src/proguard/evaluation/value/CompositeFloatValue.java +0 -81
  448. data/lib/proguard4.7/src/proguard/evaluation/value/CompositeIntegerValue.java +0 -87
  449. data/lib/proguard4.7/src/proguard/evaluation/value/CompositeLongValue.java +0 -87
  450. data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedByteValue.java +0 -64
  451. data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedCharacterValue.java +0 -64
  452. data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedDoubleValue.java +0 -64
  453. data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedFloatValue.java +0 -64
  454. data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedIntegerValue.java +0 -64
  455. data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedLongValue.java +0 -64
  456. data/lib/proguard4.7/src/proguard/evaluation/value/ConvertedShortValue.java +0 -64
  457. data/lib/proguard4.7/src/proguard/evaluation/value/DoubleValue.java +0 -359
  458. data/lib/proguard4.7/src/proguard/evaluation/value/FloatValue.java +0 -359
  459. data/lib/proguard4.7/src/proguard/evaluation/value/IdentifiedDoubleValue.java +0 -67
  460. data/lib/proguard4.7/src/proguard/evaluation/value/IdentifiedFloatValue.java +0 -67
  461. data/lib/proguard4.7/src/proguard/evaluation/value/IdentifiedIntegerValue.java +0 -67
  462. data/lib/proguard4.7/src/proguard/evaluation/value/IdentifiedLongValue.java +0 -67
  463. data/lib/proguard4.7/src/proguard/evaluation/value/IdentifiedReferenceValue.java +0 -102
  464. data/lib/proguard4.7/src/proguard/evaluation/value/IdentifiedValueFactory.java +0 -75
  465. data/lib/proguard4.7/src/proguard/evaluation/value/InstructionOffsetValue.java +0 -307
  466. data/lib/proguard4.7/src/proguard/evaluation/value/IntegerValue.java +0 -1002
  467. data/lib/proguard4.7/src/proguard/evaluation/value/LongValue.java +0 -554
  468. data/lib/proguard4.7/src/proguard/evaluation/value/NegatedDoubleValue.java +0 -71
  469. data/lib/proguard4.7/src/proguard/evaluation/value/NegatedFloatValue.java +0 -71
  470. data/lib/proguard4.7/src/proguard/evaluation/value/NegatedIntegerValue.java +0 -71
  471. data/lib/proguard4.7/src/proguard/evaluation/value/NegatedLongValue.java +0 -71
  472. data/lib/proguard4.7/src/proguard/evaluation/value/ParticularDoubleValue.java +0 -216
  473. data/lib/proguard4.7/src/proguard/evaluation/value/ParticularFloatValue.java +0 -216
  474. data/lib/proguard4.7/src/proguard/evaluation/value/ParticularIntegerValue.java +0 -383
  475. data/lib/proguard4.7/src/proguard/evaluation/value/ParticularLongValue.java +0 -271
  476. data/lib/proguard4.7/src/proguard/evaluation/value/ReferenceValue.java +0 -540
  477. data/lib/proguard4.7/src/proguard/evaluation/value/SpecificDoubleValue.java +0 -186
  478. data/lib/proguard4.7/src/proguard/evaluation/value/SpecificFloatValue.java +0 -186
  479. data/lib/proguard4.7/src/proguard/evaluation/value/SpecificIntegerValue.java +0 -354
  480. data/lib/proguard4.7/src/proguard/evaluation/value/SpecificLongValue.java +0 -259
  481. data/lib/proguard4.7/src/proguard/evaluation/value/SpecificValueFactory.java +0 -97
  482. data/lib/proguard4.7/src/proguard/evaluation/value/TopValue.java +0 -79
  483. data/lib/proguard4.7/src/proguard/evaluation/value/UnknownDoubleValue.java +0 -125
  484. data/lib/proguard4.7/src/proguard/evaluation/value/UnknownFloatValue.java +0 -125
  485. data/lib/proguard4.7/src/proguard/evaluation/value/UnknownIntegerValue.java +0 -216
  486. data/lib/proguard4.7/src/proguard/evaluation/value/UnknownLongValue.java +0 -160
  487. data/lib/proguard4.7/src/proguard/evaluation/value/Value.java +0 -169
  488. data/lib/proguard4.7/src/proguard/evaluation/value/ValueFactory.java +0 -193
  489. data/lib/proguard4.7/src/proguard/evaluation/value/package.html +0 -3
  490. data/lib/proguard4.7/src/proguard/gui/ClassPathPanel.java +0 -441
  491. data/lib/proguard4.7/src/proguard/gui/ClassSpecificationDialog.java +0 -546
  492. data/lib/proguard4.7/src/proguard/gui/ClassSpecificationsPanel.java +0 -231
  493. data/lib/proguard4.7/src/proguard/gui/ExtensionFileFilter.java +0 -78
  494. data/lib/proguard4.7/src/proguard/gui/FilterBuilder.java +0 -208
  495. data/lib/proguard4.7/src/proguard/gui/FilterDialog.java +0 -320
  496. data/lib/proguard4.7/src/proguard/gui/GUIResources.java +0 -56
  497. data/lib/proguard4.7/src/proguard/gui/GUIResources.properties +0 -643
  498. data/lib/proguard4.7/src/proguard/gui/KeepSpecificationsPanel.java +0 -81
  499. data/lib/proguard4.7/src/proguard/gui/ListPanel.java +0 -341
  500. data/lib/proguard4.7/src/proguard/gui/MANIFEST.MF +0 -3
  501. data/lib/proguard4.7/src/proguard/gui/MemberSpecificationDialog.java +0 -509
  502. data/lib/proguard4.7/src/proguard/gui/MemberSpecificationsPanel.java +0 -304
  503. data/lib/proguard4.7/src/proguard/gui/MessageDialogRunnable.java +0 -90
  504. data/lib/proguard4.7/src/proguard/gui/OptimizationsDialog.java +0 -251
  505. data/lib/proguard4.7/src/proguard/gui/ProGuardGUI.java +0 -1777
  506. data/lib/proguard4.7/src/proguard/gui/ProGuardRunnable.java +0 -154
  507. data/lib/proguard4.7/src/proguard/gui/ReTraceRunnable.java +0 -149
  508. data/lib/proguard4.7/src/proguard/gui/SwingUtil.java +0 -82
  509. data/lib/proguard4.7/src/proguard/gui/TabbedPane.java +0 -229
  510. data/lib/proguard4.7/src/proguard/gui/TextAreaOutputStream.java +0 -81
  511. data/lib/proguard4.7/src/proguard/gui/arrow.gif +0 -0
  512. data/lib/proguard4.7/src/proguard/gui/boilerplate.pro +0 -410
  513. data/lib/proguard4.7/src/proguard/gui/default.pro +0 -318
  514. data/lib/proguard4.7/src/proguard/gui/package.html +0 -3
  515. data/lib/proguard4.7/src/proguard/gui/splash/BufferedSprite.java +0 -145
  516. data/lib/proguard4.7/src/proguard/gui/splash/CircleSprite.java +0 -74
  517. data/lib/proguard4.7/src/proguard/gui/splash/ClipSprite.java +0 -85
  518. data/lib/proguard4.7/src/proguard/gui/splash/ColorSprite.java +0 -65
  519. data/lib/proguard4.7/src/proguard/gui/splash/CompositeSprite.java +0 -56
  520. data/lib/proguard4.7/src/proguard/gui/splash/ConstantColor.java +0 -51
  521. data/lib/proguard4.7/src/proguard/gui/splash/ConstantDouble.java +0 -49
  522. data/lib/proguard4.7/src/proguard/gui/splash/ConstantFont.java +0 -46
  523. data/lib/proguard4.7/src/proguard/gui/splash/ConstantInt.java +0 -49
  524. data/lib/proguard4.7/src/proguard/gui/splash/ConstantString.java +0 -49
  525. data/lib/proguard4.7/src/proguard/gui/splash/ConstantTiming.java +0 -57
  526. data/lib/proguard4.7/src/proguard/gui/splash/FontSprite.java +0 -65
  527. data/lib/proguard4.7/src/proguard/gui/splash/ImageSprite.java +0 -76
  528. data/lib/proguard4.7/src/proguard/gui/splash/LinearColor.java +0 -72
  529. data/lib/proguard4.7/src/proguard/gui/splash/LinearDouble.java +0 -55
  530. data/lib/proguard4.7/src/proguard/gui/splash/LinearInt.java +0 -55
  531. data/lib/proguard4.7/src/proguard/gui/splash/LinearTiming.java +0 -55
  532. data/lib/proguard4.7/src/proguard/gui/splash/OverrideGraphics2D.java +0 -598
  533. data/lib/proguard4.7/src/proguard/gui/splash/RectangleSprite.java +0 -114
  534. data/lib/proguard4.7/src/proguard/gui/splash/SawToothTiming.java +0 -53
  535. data/lib/proguard4.7/src/proguard/gui/splash/ShadowedSprite.java +0 -109
  536. data/lib/proguard4.7/src/proguard/gui/splash/SineTiming.java +0 -53
  537. data/lib/proguard4.7/src/proguard/gui/splash/SmoothTiming.java +0 -66
  538. data/lib/proguard4.7/src/proguard/gui/splash/SplashPanel.java +0 -235
  539. data/lib/proguard4.7/src/proguard/gui/splash/Sprite.java +0 -41
  540. data/lib/proguard4.7/src/proguard/gui/splash/TextSprite.java +0 -89
  541. data/lib/proguard4.7/src/proguard/gui/splash/TimeSwitchSprite.java +0 -75
  542. data/lib/proguard4.7/src/proguard/gui/splash/Timing.java +0 -34
  543. data/lib/proguard4.7/src/proguard/gui/splash/TypeWriterString.java +0 -71
  544. data/lib/proguard4.7/src/proguard/gui/splash/VariableColor.java +0 -36
  545. data/lib/proguard4.7/src/proguard/gui/splash/VariableDouble.java +0 -34
  546. data/lib/proguard4.7/src/proguard/gui/splash/VariableFont.java +0 -36
  547. data/lib/proguard4.7/src/proguard/gui/splash/VariableInt.java +0 -34
  548. data/lib/proguard4.7/src/proguard/gui/splash/VariableSizeFont.java +0 -65
  549. data/lib/proguard4.7/src/proguard/gui/splash/VariableString.java +0 -34
  550. data/lib/proguard4.7/src/proguard/gui/splash/package.html +0 -4
  551. data/lib/proguard4.7/src/proguard/gui/vtitle.png +0 -0
  552. data/lib/proguard4.7/src/proguard/io/CascadingDataEntryWriter.java +0 -94
  553. data/lib/proguard4.7/src/proguard/io/ClassFilter.java +0 -59
  554. data/lib/proguard4.7/src/proguard/io/ClassReader.java +0 -115
  555. data/lib/proguard4.7/src/proguard/io/ClassRewriter.java +0 -80
  556. data/lib/proguard4.7/src/proguard/io/DataEntry.java +0 -62
  557. data/lib/proguard4.7/src/proguard/io/DataEntryClassWriter.java +0 -85
  558. data/lib/proguard4.7/src/proguard/io/DataEntryCopier.java +0 -247
  559. data/lib/proguard4.7/src/proguard/io/DataEntryDirectoryFilter.java +0 -40
  560. data/lib/proguard4.7/src/proguard/io/DataEntryFilter.java +0 -38
  561. data/lib/proguard4.7/src/proguard/io/DataEntryNameFilter.java +0 -54
  562. data/lib/proguard4.7/src/proguard/io/DataEntryObfuscator.java +0 -150
  563. data/lib/proguard4.7/src/proguard/io/DataEntryParentFilter.java +0 -51
  564. data/lib/proguard4.7/src/proguard/io/DataEntryPump.java +0 -43
  565. data/lib/proguard4.7/src/proguard/io/DataEntryReader.java +0 -38
  566. data/lib/proguard4.7/src/proguard/io/DataEntryRenamer.java +0 -104
  567. data/lib/proguard4.7/src/proguard/io/DataEntryRewriter.java +0 -148
  568. data/lib/proguard4.7/src/proguard/io/DataEntryWriter.java +0 -73
  569. data/lib/proguard4.7/src/proguard/io/DirectoryFilter.java +0 -58
  570. data/lib/proguard4.7/src/proguard/io/DirectoryPump.java +0 -78
  571. data/lib/proguard4.7/src/proguard/io/DirectoryWriter.java +0 -165
  572. data/lib/proguard4.7/src/proguard/io/FileDataEntry.java +0 -96
  573. data/lib/proguard4.7/src/proguard/io/FilteredDataEntryReader.java +0 -90
  574. data/lib/proguard4.7/src/proguard/io/FilteredDataEntryWriter.java +0 -125
  575. data/lib/proguard4.7/src/proguard/io/Finisher.java +0 -37
  576. data/lib/proguard4.7/src/proguard/io/JarReader.java +0 -75
  577. data/lib/proguard4.7/src/proguard/io/JarWriter.java +0 -235
  578. data/lib/proguard4.7/src/proguard/io/ManifestRewriter.java +0 -216
  579. data/lib/proguard4.7/src/proguard/io/NameFilter.java +0 -83
  580. data/lib/proguard4.7/src/proguard/io/ParentDataEntryWriter.java +0 -75
  581. data/lib/proguard4.7/src/proguard/io/RenamedDataEntry.java +0 -83
  582. data/lib/proguard4.7/src/proguard/io/ZipDataEntry.java +0 -98
  583. data/lib/proguard4.7/src/proguard/io/package.html +0 -4
  584. data/lib/proguard4.7/src/proguard/obfuscate/AttributeShrinker.java +0 -120
  585. data/lib/proguard4.7/src/proguard/obfuscate/AttributeUsageMarker.java +0 -71
  586. data/lib/proguard4.7/src/proguard/obfuscate/ClassObfuscator.java +0 -533
  587. data/lib/proguard4.7/src/proguard/obfuscate/ClassRenamer.java +0 -109
  588. data/lib/proguard4.7/src/proguard/obfuscate/DictionaryNameFactory.java +0 -189
  589. data/lib/proguard4.7/src/proguard/obfuscate/MapCleaner.java +0 -57
  590. data/lib/proguard4.7/src/proguard/obfuscate/MappingKeeper.java +0 -177
  591. data/lib/proguard4.7/src/proguard/obfuscate/MappingPrinter.java +0 -147
  592. data/lib/proguard4.7/src/proguard/obfuscate/MappingProcessor.java +0 -79
  593. data/lib/proguard4.7/src/proguard/obfuscate/MappingReader.java +0 -199
  594. data/lib/proguard4.7/src/proguard/obfuscate/MemberNameCleaner.java +0 -60
  595. data/lib/proguard4.7/src/proguard/obfuscate/MemberNameCollector.java +0 -106
  596. data/lib/proguard4.7/src/proguard/obfuscate/MemberNameConflictFixer.java +0 -159
  597. data/lib/proguard4.7/src/proguard/obfuscate/MemberNameFilter.java +0 -120
  598. data/lib/proguard4.7/src/proguard/obfuscate/MemberObfuscator.java +0 -230
  599. data/lib/proguard4.7/src/proguard/obfuscate/MemberSpecialNameFilter.java +0 -101
  600. data/lib/proguard4.7/src/proguard/obfuscate/MultiMappingProcessor.java +0 -96
  601. data/lib/proguard4.7/src/proguard/obfuscate/NameFactory.java +0 -34
  602. data/lib/proguard4.7/src/proguard/obfuscate/NameFactoryResetter.java +0 -59
  603. data/lib/proguard4.7/src/proguard/obfuscate/NameMarker.java +0 -166
  604. data/lib/proguard4.7/src/proguard/obfuscate/NumericNameFactory.java +0 -49
  605. data/lib/proguard4.7/src/proguard/obfuscate/Obfuscator.java +0 -445
  606. data/lib/proguard4.7/src/proguard/obfuscate/ParameterNameMarker.java +0 -128
  607. data/lib/proguard4.7/src/proguard/obfuscate/SimpleNameFactory.java +0 -156
  608. data/lib/proguard4.7/src/proguard/obfuscate/SourceFileRenamer.java +0 -84
  609. data/lib/proguard4.7/src/proguard/obfuscate/SpecialNameFactory.java +0 -83
  610. data/lib/proguard4.7/src/proguard/obfuscate/package.html +0 -3
  611. data/lib/proguard4.7/src/proguard/optimize/BootstrapMethodArgumentShrinker.java +0 -103
  612. data/lib/proguard4.7/src/proguard/optimize/ChangedCodePrinter.java +0 -297
  613. data/lib/proguard4.7/src/proguard/optimize/ConstantMemberFilter.java +0 -77
  614. data/lib/proguard4.7/src/proguard/optimize/ConstantParameterFilter.java +0 -79
  615. data/lib/proguard4.7/src/proguard/optimize/DuplicateInitializerFixer.java +0 -215
  616. data/lib/proguard4.7/src/proguard/optimize/DuplicateInitializerInvocationFixer.java +0 -161
  617. data/lib/proguard4.7/src/proguard/optimize/KeepMarker.java +0 -95
  618. data/lib/proguard4.7/src/proguard/optimize/KeptClassFilter.java +0 -69
  619. data/lib/proguard4.7/src/proguard/optimize/KeptMemberFilter.java +0 -88
  620. data/lib/proguard4.7/src/proguard/optimize/MemberDescriptorSpecializer.java +0 -138
  621. data/lib/proguard4.7/src/proguard/optimize/MethodDescriptorShrinker.java +0 -317
  622. data/lib/proguard4.7/src/proguard/optimize/MethodStaticizer.java +0 -87
  623. data/lib/proguard4.7/src/proguard/optimize/OptimizationInfoMemberFilter.java +0 -94
  624. data/lib/proguard4.7/src/proguard/optimize/Optimizer.java +0 -963
  625. data/lib/proguard4.7/src/proguard/optimize/ParameterShrinker.java +0 -146
  626. data/lib/proguard4.7/src/proguard/optimize/TailRecursionSimplifier.java +0 -356
  627. data/lib/proguard4.7/src/proguard/optimize/WriteOnlyFieldFilter.java +0 -65
  628. data/lib/proguard4.7/src/proguard/optimize/evaluation/EvaluationShrinker.java +0 -2082
  629. data/lib/proguard4.7/src/proguard/optimize/evaluation/EvaluationSimplifier.java +0 -973
  630. data/lib/proguard4.7/src/proguard/optimize/evaluation/LivenessAnalyzer.java +0 -526
  631. data/lib/proguard4.7/src/proguard/optimize/evaluation/LoadingInvocationUnit.java +0 -195
  632. data/lib/proguard4.7/src/proguard/optimize/evaluation/PartialEvaluator.java +0 -1282
  633. data/lib/proguard4.7/src/proguard/optimize/evaluation/StoringInvocationUnit.java +0 -207
  634. data/lib/proguard4.7/src/proguard/optimize/evaluation/TracedBranchUnit.java +0 -59
  635. data/lib/proguard4.7/src/proguard/optimize/evaluation/VariableOptimizer.java +0 -345
  636. data/lib/proguard4.7/src/proguard/optimize/evaluation/package.html +0 -4
  637. data/lib/proguard4.7/src/proguard/optimize/info/AccessMethodMarker.java +0 -202
  638. data/lib/proguard4.7/src/proguard/optimize/info/BackwardBranchMarker.java +0 -90
  639. data/lib/proguard4.7/src/proguard/optimize/info/CatchExceptionMarker.java +0 -69
  640. data/lib/proguard4.7/src/proguard/optimize/info/CaughtClassFilter.java +0 -63
  641. data/lib/proguard4.7/src/proguard/optimize/info/CaughtClassMarker.java +0 -64
  642. data/lib/proguard4.7/src/proguard/optimize/info/ClassOptimizationInfo.java +0 -165
  643. data/lib/proguard4.7/src/proguard/optimize/info/ClassOptimizationInfoSetter.java +0 -47
  644. data/lib/proguard4.7/src/proguard/optimize/info/DotClassFilter.java +0 -63
  645. data/lib/proguard4.7/src/proguard/optimize/info/DotClassMarker.java +0 -96
  646. data/lib/proguard4.7/src/proguard/optimize/info/ExceptionInstructionChecker.java +0 -193
  647. data/lib/proguard4.7/src/proguard/optimize/info/FieldOptimizationInfo.java +0 -204
  648. data/lib/proguard4.7/src/proguard/optimize/info/InstanceofClassFilter.java +0 -63
  649. data/lib/proguard4.7/src/proguard/optimize/info/InstanceofClassMarker.java +0 -93
  650. data/lib/proguard4.7/src/proguard/optimize/info/InstantiationClassFilter.java +0 -62
  651. data/lib/proguard4.7/src/proguard/optimize/info/InstantiationClassMarker.java +0 -93
  652. data/lib/proguard4.7/src/proguard/optimize/info/MemberOptimizationInfoSetter.java +0 -59
  653. data/lib/proguard4.7/src/proguard/optimize/info/MethodInvocationMarker.java +0 -107
  654. data/lib/proguard4.7/src/proguard/optimize/info/MethodOptimizationInfo.java +0 -302
  655. data/lib/proguard4.7/src/proguard/optimize/info/NoSideEffectMethodMarker.java +0 -91
  656. data/lib/proguard4.7/src/proguard/optimize/info/NonPrivateMemberMarker.java +0 -171
  657. data/lib/proguard4.7/src/proguard/optimize/info/PackageVisibleMemberContainingClassMarker.java +0 -85
  658. data/lib/proguard4.7/src/proguard/optimize/info/PackageVisibleMemberInvokingClassMarker.java +0 -129
  659. data/lib/proguard4.7/src/proguard/optimize/info/ParameterUsageMarker.java +0 -285
  660. data/lib/proguard4.7/src/proguard/optimize/info/ReadWriteFieldMarker.java +0 -163
  661. data/lib/proguard4.7/src/proguard/optimize/info/SideEffectInstructionChecker.java +0 -245
  662. data/lib/proguard4.7/src/proguard/optimize/info/SideEffectMethodMarker.java +0 -175
  663. data/lib/proguard4.7/src/proguard/optimize/info/StaticInitializerContainingClassFilter.java +0 -62
  664. data/lib/proguard4.7/src/proguard/optimize/info/StaticInitializerContainingClassMarker.java +0 -65
  665. data/lib/proguard4.7/src/proguard/optimize/info/SuperInvocationMarker.java +0 -93
  666. data/lib/proguard4.7/src/proguard/optimize/info/VariableUsageMarker.java +0 -96
  667. data/lib/proguard4.7/src/proguard/optimize/info/package.html +0 -4
  668. data/lib/proguard4.7/src/proguard/optimize/package.html +0 -4
  669. data/lib/proguard4.7/src/proguard/optimize/peephole/BranchTargetFinder.java +0 -687
  670. data/lib/proguard4.7/src/proguard/optimize/peephole/ClassFinalizer.java +0 -84
  671. data/lib/proguard4.7/src/proguard/optimize/peephole/ClassMerger.java +0 -576
  672. data/lib/proguard4.7/src/proguard/optimize/peephole/GotoCommonCodeReplacer.java +0 -266
  673. data/lib/proguard4.7/src/proguard/optimize/peephole/GotoGotoReplacer.java +0 -115
  674. data/lib/proguard4.7/src/proguard/optimize/peephole/GotoReturnReplacer.java +0 -115
  675. data/lib/proguard4.7/src/proguard/optimize/peephole/HorizontalClassMerger.java +0 -90
  676. data/lib/proguard4.7/src/proguard/optimize/peephole/InstructionSequenceConstants.java +0 -4424
  677. data/lib/proguard4.7/src/proguard/optimize/peephole/InstructionSequenceReplacer.java +0 -420
  678. data/lib/proguard4.7/src/proguard/optimize/peephole/InstructionSequencesReplacer.java +0 -138
  679. data/lib/proguard4.7/src/proguard/optimize/peephole/MemberPrivatizer.java +0 -103
  680. data/lib/proguard4.7/src/proguard/optimize/peephole/MethodFinalizer.java +0 -93
  681. data/lib/proguard4.7/src/proguard/optimize/peephole/MethodInliner.java +0 -597
  682. data/lib/proguard4.7/src/proguard/optimize/peephole/NopRemover.java +0 -89
  683. data/lib/proguard4.7/src/proguard/optimize/peephole/PeepholeOptimizer.java +0 -103
  684. data/lib/proguard4.7/src/proguard/optimize/peephole/ReachableCodeMarker.java +0 -262
  685. data/lib/proguard4.7/src/proguard/optimize/peephole/RetargetedInnerClassAttributeRemover.java +0 -170
  686. data/lib/proguard4.7/src/proguard/optimize/peephole/TargetClassChanger.java +0 -455
  687. data/lib/proguard4.7/src/proguard/optimize/peephole/UnreachableCodeRemover.java +0 -143
  688. data/lib/proguard4.7/src/proguard/optimize/peephole/UnreachableExceptionRemover.java +0 -163
  689. data/lib/proguard4.7/src/proguard/optimize/peephole/VariableShrinker.java +0 -129
  690. data/lib/proguard4.7/src/proguard/optimize/peephole/VerticalClassMerger.java +0 -88
  691. data/lib/proguard4.7/src/proguard/optimize/peephole/package.html +0 -3
  692. data/lib/proguard4.7/src/proguard/package.html +0 -5
  693. data/lib/proguard4.7/src/proguard/preverify/CodePreverifier.java +0 -611
  694. data/lib/proguard4.7/src/proguard/preverify/CodeSubroutineInliner.java +0 -406
  695. data/lib/proguard4.7/src/proguard/preverify/Preverifier.java +0 -73
  696. data/lib/proguard4.7/src/proguard/preverify/SubroutineInliner.java +0 -73
  697. data/lib/proguard4.7/src/proguard/retrace/MANIFEST.MF +0 -3
  698. data/lib/proguard4.7/src/proguard/retrace/ReTrace.java +0 -749
  699. data/lib/proguard4.7/src/proguard/retrace/package.html +0 -4
  700. data/lib/proguard4.7/src/proguard/shrink/AnnotationUsageMarker.java +0 -333
  701. data/lib/proguard4.7/src/proguard/shrink/ClassShrinker.java +0 -458
  702. data/lib/proguard4.7/src/proguard/shrink/InnerUsageMarker.java +0 -174
  703. data/lib/proguard4.7/src/proguard/shrink/InterfaceUsageMarker.java +0 -152
  704. data/lib/proguard4.7/src/proguard/shrink/ShortestUsageMark.java +0 -183
  705. data/lib/proguard4.7/src/proguard/shrink/ShortestUsageMarker.java +0 -277
  706. data/lib/proguard4.7/src/proguard/shrink/ShortestUsagePrinter.java +0 -210
  707. data/lib/proguard4.7/src/proguard/shrink/Shrinker.java +0 -181
  708. data/lib/proguard4.7/src/proguard/shrink/UsageMarker.java +0 -1036
  709. data/lib/proguard4.7/src/proguard/shrink/UsagePrinter.java +0 -177
  710. data/lib/proguard4.7/src/proguard/shrink/UsedClassFilter.java +0 -74
  711. data/lib/proguard4.7/src/proguard/shrink/UsedMemberFilter.java +0 -93
  712. data/lib/proguard4.7/src/proguard/shrink/package.html +0 -3
  713. data/lib/proguard4.7/src/proguard/util/AndMatcher.java +0 -49
  714. data/lib/proguard4.7/src/proguard/util/ClassNameParser.java +0 -216
  715. data/lib/proguard4.7/src/proguard/util/ConstantMatcher.java +0 -48
  716. data/lib/proguard4.7/src/proguard/util/EmptyStringMatcher.java +0 -36
  717. data/lib/proguard4.7/src/proguard/util/ExtensionMatcher.java +0 -63
  718. data/lib/proguard4.7/src/proguard/util/FileNameParser.java +0 -121
  719. data/lib/proguard4.7/src/proguard/util/FixedStringMatcher.java +0 -56
  720. data/lib/proguard4.7/src/proguard/util/ListMatcher.java +0 -69
  721. data/lib/proguard4.7/src/proguard/util/ListParser.java +0 -137
  722. data/lib/proguard4.7/src/proguard/util/ListUtil.java +0 -180
  723. data/lib/proguard4.7/src/proguard/util/NameParser.java +0 -106
  724. data/lib/proguard4.7/src/proguard/util/NotMatcher.java +0 -46
  725. data/lib/proguard4.7/src/proguard/util/OrMatcher.java +0 -49
  726. data/lib/proguard4.7/src/proguard/util/SettableMatcher.java +0 -46
  727. data/lib/proguard4.7/src/proguard/util/StringMatcher.java +0 -38
  728. data/lib/proguard4.7/src/proguard/util/StringParser.java +0 -35
  729. data/lib/proguard4.7/src/proguard/util/VariableStringMatcher.java +0 -126
  730. data/lib/proguard4.7/src/proguard/util/package.html +0 -3
  731. data/lib/proguard4.7/src/proguard/wtk/ProGuardObfuscator.java +0 -141
  732. data/lib/proguard4.7/src/proguard/wtk/default.pro +0 -114
  733. data/lib/proguard4.7/src/proguard/wtk/package.html +0 -3
@@ -1,944 +0,0 @@
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.util;
22
-
23
- import proguard.classfile.*;
24
- import proguard.classfile.attribute.CodeAttribute;
25
- import proguard.classfile.attribute.visitor.AttributeVisitor;
26
- import proguard.classfile.constant.*;
27
- import proguard.classfile.constant.visitor.ConstantVisitor;
28
- import proguard.classfile.instruction.*;
29
- import proguard.classfile.instruction.visitor.InstructionVisitor;
30
- import proguard.classfile.visitor.*;
31
- import proguard.util.StringMatcher;
32
-
33
- /**
34
- * This InstructionVisitor initializes any constant
35
- * <code>Class.get[Declared]{Field,Method}</code> references of all instructions
36
- * it visits. More specifically, it fills out the references of string constant
37
- * pool entries that refer to a class member in the program class pool or in the
38
- * library class pool.
39
- * <p>
40
- * It optionally prints notes if on usage of
41
- * <code>(SomeClass)Class.forName(variable).newInstance()</code>.
42
- * <p>
43
- * The class hierarchy and references must be initialized before using this
44
- * visitor.
45
- *
46
- * @see ClassSuperHierarchyInitializer
47
- * @see ClassReferenceInitializer
48
- *
49
- * @author Eric Lafortune
50
- */
51
- public class DynamicMemberReferenceInitializer
52
- extends SimplifiedVisitor
53
- implements InstructionVisitor,
54
- ConstantVisitor,
55
- AttributeVisitor,
56
- MemberVisitor
57
- {
58
- /*
59
- private static boolean DEBUG = true;
60
- /*/
61
- private static final boolean DEBUG = false;
62
- //*/
63
-
64
- public static final int CLASS_INDEX = InstructionSequenceMatcher.X;
65
- public static final int MEMBER_NAME_INDEX = InstructionSequenceMatcher.Y;
66
- public static final int TYPE_CLASS_INDEX = InstructionSequenceMatcher.Z;
67
-
68
- public static final int PARAMETER0_CLASS_INDEX = InstructionSequenceMatcher.A;
69
- public static final int PARAMETER1_CLASS_INDEX = InstructionSequenceMatcher.B;
70
- public static final int PARAMETER2_CLASS_INDEX = InstructionSequenceMatcher.C;
71
- public static final int PARAMETER3_CLASS_INDEX = InstructionSequenceMatcher.D;
72
-
73
-
74
- private final Constant[] GET_FIELD_CONSTANTS = new Constant[]
75
- {
76
- new MethodrefConstant(1, 2, null, null),
77
- new ClassConstant(3, null),
78
- new NameAndTypeConstant(4, 5),
79
- new Utf8Constant(ClassConstants.INTERNAL_NAME_JAVA_LANG_CLASS),
80
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_NAME_CLASS_GET_FIELD),
81
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_TYPE_CLASS_GET_FIELD),
82
- };
83
-
84
- private final Constant[] GET_DECLARED_FIELD_CONSTANTS = new Constant[]
85
- {
86
- new MethodrefConstant(1, 2, null, null),
87
- new ClassConstant(3, null),
88
- new NameAndTypeConstant(4, 5),
89
- new Utf8Constant(ClassConstants.INTERNAL_NAME_JAVA_LANG_CLASS),
90
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_NAME_CLASS_GET_DECLARED_FIELD),
91
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_TYPE_CLASS_GET_DECLARED_FIELD),
92
- };
93
-
94
- private final Constant[] GET_CONSTRUCTOR_CONSTANTS = new Constant[]
95
- {
96
- new MethodrefConstant(1, 2, null, null),
97
- new ClassConstant(3, null),
98
- new NameAndTypeConstant(4, 5),
99
- new Utf8Constant(ClassConstants.INTERNAL_NAME_JAVA_LANG_CLASS),
100
- new Utf8Constant(ClassConstants.INTERNAL_CONSTRUCTOR_NAME_CLASS_GET_CONSTRUCTOR),
101
- new Utf8Constant(ClassConstants.INTERNAL_CONSTRUCTOR_TYPE_CLASS_GET_CONSTRUCTOR),
102
- };
103
-
104
- private final Constant[] GET_DECLARED_CONSTRUCTOR_CONSTANTS = new Constant[]
105
- {
106
- new MethodrefConstant(1, 2, null, null),
107
- new ClassConstant(3, null),
108
- new NameAndTypeConstant(4, 5),
109
- new Utf8Constant(ClassConstants.INTERNAL_NAME_JAVA_LANG_CLASS),
110
- new Utf8Constant(ClassConstants.INTERNAL_CONSTRUCTOR_NAME_CLASS_GET_DECLARED_CONSTRUCTOR),
111
- new Utf8Constant(ClassConstants.INTERNAL_CONSTRUCTOR_TYPE_CLASS_GET_DECLARED_CONSTRUCTOR),
112
- };
113
-
114
- private final Constant[] GET_METHOD_CONSTANTS = new Constant[]
115
- {
116
- new MethodrefConstant(1, 2, null, null),
117
- new ClassConstant(3, null),
118
- new NameAndTypeConstant(4, 5),
119
- new Utf8Constant(ClassConstants.INTERNAL_NAME_JAVA_LANG_CLASS),
120
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_NAME_CLASS_GET_METHOD),
121
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_TYPE_CLASS_GET_METHOD),
122
- };
123
-
124
- private final Constant[] GET_DECLARED_METHOD_CONSTANTS = new Constant[]
125
- {
126
- new MethodrefConstant(1, 2, null, null),
127
- new ClassConstant(3, null),
128
- new NameAndTypeConstant(4, 5),
129
- new Utf8Constant(ClassConstants.INTERNAL_NAME_JAVA_LANG_CLASS),
130
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_NAME_CLASS_GET_DECLARED_METHOD),
131
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_TYPE_CLASS_GET_DECLARED_METHOD),
132
- };
133
-
134
- private final Constant[] NEW_INTEGER_UPDATER_CONSTANTS = new Constant[]
135
- {
136
- new MethodrefConstant(1, 2, null, null),
137
- new ClassConstant(3, null),
138
- new NameAndTypeConstant(4, 5),
139
- new Utf8Constant(ClassConstants.INTERNAL_NAME_JAVA_UTIL_CONCURRENT_ATOMIC_ATOMIC_INTEGER_FIELD_UPDATER),
140
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_NAME_NEW_UPDATER),
141
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_TYPE_NEW_INTEGER_UPDATER),
142
- };
143
-
144
- private final Constant[] NEW_LONG_UPDATER_CONSTANTS = new Constant[]
145
- {
146
- new MethodrefConstant(1, 2, null, null),
147
- new ClassConstant(3, null),
148
- new NameAndTypeConstant(4, 5),
149
- new Utf8Constant(ClassConstants.INTERNAL_NAME_JAVA_UTIL_CONCURRENT_ATOMIC_ATOMIC_LONG_FIELD_UPDATER),
150
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_NAME_NEW_UPDATER),
151
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_TYPE_NEW_LONG_UPDATER),
152
- };
153
-
154
- private final Constant[] NEW_REFERENCE_UPDATER_CONSTANTS = new Constant[]
155
- {
156
- new MethodrefConstant(1, 2, null, null),
157
- new ClassConstant(3, null),
158
- new NameAndTypeConstant(4, 5),
159
- new Utf8Constant(ClassConstants.INTERNAL_NAME_JAVA_UTIL_CONCURRENT_ATOMIC_ATOMIC_REFERENCE_FIELD_UPDATER),
160
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_NAME_NEW_UPDATER),
161
- new Utf8Constant(ClassConstants.INTERNAL_METHOD_TYPE_NEW_REFERENCE_UPDATER),
162
- };
163
-
164
- // SomeClass.class.get[Declared]Field("someField").
165
- private final Instruction[] CONSTANT_GET_FIELD_INSTRUCTIONS = new Instruction[]
166
- {
167
- new ConstantInstruction(InstructionConstants.OP_LDC, CLASS_INDEX),
168
- new ConstantInstruction(InstructionConstants.OP_LDC, MEMBER_NAME_INDEX),
169
- new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
170
- };
171
-
172
- // // SomeClass.class.get[Declared]Constructor(new Class[] {}).
173
- // private final Instruction[] CONSTANT_GET_CONSTRUCTOR_INSTRUCTIONS0 = new Instruction[]
174
- // {
175
- // new ConstantInstruction(InstructionConstants.OP_LDC, CLASS_INDEX),
176
- // new SimpleInstruction(InstructionConstants.OP_ICONST_0),
177
- // new ConstantInstruction(InstructionConstants.OP_ANEWARRAY, 1),
178
- // new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
179
- // };
180
- //
181
- // // SomeClass.class.get[Declared]Constructor(new Class[] { A.class }).
182
- // private final Instruction[] CONSTANT_GET_CONSTRUCTOR_INSTRUCTIONS1 = new Instruction[]
183
- // {
184
- // new ConstantInstruction(InstructionConstants.OP_LDC, CLASS_INDEX),
185
- // new SimpleInstruction(InstructionConstants.OP_ICONST_1),
186
- // new ConstantInstruction(InstructionConstants.OP_ANEWARRAY, 1),
187
- // new SimpleInstruction(InstructionConstants.OP_DUP),
188
- // new SimpleInstruction(InstructionConstants.OP_ICONST_0),
189
- // new ConstantInstruction(InstructionConstants.OP_LDC, PARAMETER0_CLASS_INDEX),
190
- // new SimpleInstruction(InstructionConstants.OP_AASTORE),
191
- // new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
192
- // };
193
- //
194
- // // SomeClass.class.get[Declared]Constructor(new Class[] { A.class, B.class }).
195
- // private final Instruction[] CONSTANT_GET_CONSTRUCTOR_INSTRUCTIONS2 = new Instruction[]
196
- // {
197
- // new ConstantInstruction(InstructionConstants.OP_LDC, CLASS_INDEX),
198
- // new SimpleInstruction(InstructionConstants.OP_ICONST_2),
199
- // new ConstantInstruction(InstructionConstants.OP_ANEWARRAY, 1),
200
- // new SimpleInstruction(InstructionConstants.OP_DUP),
201
- // new SimpleInstruction(InstructionConstants.OP_ICONST_0),
202
- // new ConstantInstruction(InstructionConstants.OP_LDC, PARAMETER0_CLASS_INDEX),
203
- // new SimpleInstruction(InstructionConstants.OP_AASTORE),
204
- // new SimpleInstruction(InstructionConstants.OP_DUP),
205
- // new SimpleInstruction(InstructionConstants.OP_ICONST_1),
206
- // new ConstantInstruction(InstructionConstants.OP_LDC, PARAMETER1_CLASS_INDEX),
207
- // new SimpleInstruction(InstructionConstants.OP_AASTORE),
208
- // new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
209
- // };
210
-
211
- // SomeClass.class.get[Declared]Method("someMethod", new Class[] {}).
212
- private final Instruction[] CONSTANT_GET_METHOD_INSTRUCTIONS0 = new Instruction[]
213
- {
214
- new ConstantInstruction(InstructionConstants.OP_LDC, CLASS_INDEX),
215
- new ConstantInstruction(InstructionConstants.OP_LDC, MEMBER_NAME_INDEX),
216
- new SimpleInstruction(InstructionConstants.OP_ICONST_0),
217
- new ConstantInstruction(InstructionConstants.OP_ANEWARRAY, 1),
218
- new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
219
- };
220
-
221
- // SomeClass.class.get[Declared]Method("someMethod", new Class[] { A.class }).
222
- private final Instruction[] CONSTANT_GET_METHOD_INSTRUCTIONS1 = new Instruction[]
223
- {
224
- new ConstantInstruction(InstructionConstants.OP_LDC, CLASS_INDEX),
225
- new ConstantInstruction(InstructionConstants.OP_LDC, MEMBER_NAME_INDEX),
226
- new SimpleInstruction(InstructionConstants.OP_ICONST_1),
227
- new ConstantInstruction(InstructionConstants.OP_ANEWARRAY, 1),
228
- new SimpleInstruction(InstructionConstants.OP_DUP),
229
- new SimpleInstruction(InstructionConstants.OP_ICONST_0),
230
- new ConstantInstruction(InstructionConstants.OP_LDC, PARAMETER0_CLASS_INDEX),
231
- new SimpleInstruction(InstructionConstants.OP_AASTORE),
232
- new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
233
- };
234
-
235
- // SomeClass.class.get[Declared]Method("someMethod", new Class[] { A.class, B.class }).
236
- private final Instruction[] CONSTANT_GET_METHOD_INSTRUCTIONS2 = new Instruction[]
237
- {
238
- new ConstantInstruction(InstructionConstants.OP_LDC, CLASS_INDEX),
239
- new ConstantInstruction(InstructionConstants.OP_LDC, MEMBER_NAME_INDEX),
240
- new SimpleInstruction(InstructionConstants.OP_ICONST_2),
241
- new ConstantInstruction(InstructionConstants.OP_ANEWARRAY, 1),
242
- new SimpleInstruction(InstructionConstants.OP_DUP),
243
- new SimpleInstruction(InstructionConstants.OP_ICONST_0),
244
- new ConstantInstruction(InstructionConstants.OP_LDC, PARAMETER0_CLASS_INDEX),
245
- new SimpleInstruction(InstructionConstants.OP_AASTORE),
246
- new SimpleInstruction(InstructionConstants.OP_DUP),
247
- new SimpleInstruction(InstructionConstants.OP_ICONST_1),
248
- new ConstantInstruction(InstructionConstants.OP_LDC, PARAMETER1_CLASS_INDEX),
249
- new SimpleInstruction(InstructionConstants.OP_AASTORE),
250
- new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
251
- };
252
-
253
- // AtomicIntegerFieldUpdater.newUpdater(A.class, "someField").
254
- // AtomicLongFieldUpdater.newUpdater(A.class, "someField").
255
- private final Instruction[] CONSTANT_NEW_PRIMITIVE_UPDATER_INSTRUCTIONS = new Instruction[]
256
- {
257
- new ConstantInstruction(InstructionConstants.OP_LDC, CLASS_INDEX),
258
- new ConstantInstruction(InstructionConstants.OP_LDC, MEMBER_NAME_INDEX),
259
- new ConstantInstruction(InstructionConstants.OP_INVOKESTATIC, 0),
260
- };
261
-
262
- // AtomicReferenceFieldUpdater.newUpdater(A.class, B.class, "someField").
263
- private final Instruction[] CONSTANT_NEW_REFERENCE_UPDATER_INSTRUCTIONS = new Instruction[]
264
- {
265
- new ConstantInstruction(InstructionConstants.OP_LDC, CLASS_INDEX),
266
- new ConstantInstruction(InstructionConstants.OP_LDC, TYPE_CLASS_INDEX),
267
- new ConstantInstruction(InstructionConstants.OP_LDC, MEMBER_NAME_INDEX),
268
- new ConstantInstruction(InstructionConstants.OP_INVOKESTATIC, 0),
269
- };
270
-
271
- // get[Declared]Field("someField").
272
- private final Instruction[] GET_FIELD_INSTRUCTIONS = new Instruction[]
273
- {
274
- new ConstantInstruction(InstructionConstants.OP_LDC, MEMBER_NAME_INDEX),
275
- new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
276
- };
277
-
278
- // // get[Declared]Constructor(new Class[] {}).
279
- // private final Instruction[] GET_CONSTRUCTOR_INSTRUCTIONS0 = new Instruction[]
280
- // {
281
- // new SimpleInstruction(InstructionConstants.OP_ICONST_0),
282
- // new ConstantInstruction(InstructionConstants.OP_ANEWARRAY, 1),
283
- // new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
284
- // };
285
-
286
- // get[Declared]Constructor(new Class[] { A.class }).
287
- private final Instruction[] GET_CONSTRUCTOR_INSTRUCTIONS1 = new Instruction[]
288
- {
289
- new SimpleInstruction(InstructionConstants.OP_ICONST_1),
290
- new ConstantInstruction(InstructionConstants.OP_ANEWARRAY, 1),
291
- new SimpleInstruction(InstructionConstants.OP_DUP),
292
- new SimpleInstruction(InstructionConstants.OP_ICONST_0),
293
- new ConstantInstruction(InstructionConstants.OP_LDC, PARAMETER0_CLASS_INDEX),
294
- new SimpleInstruction(InstructionConstants.OP_AASTORE),
295
- new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
296
- };
297
-
298
- // get[Declared]Constructor(new Class[] { A.class, B.class }).
299
- private final Instruction[] GET_CONSTRUCTOR_INSTRUCTIONS2 = new Instruction[]
300
- {
301
- new SimpleInstruction(InstructionConstants.OP_ICONST_2),
302
- new ConstantInstruction(InstructionConstants.OP_ANEWARRAY, 1),
303
- new SimpleInstruction(InstructionConstants.OP_DUP),
304
- new SimpleInstruction(InstructionConstants.OP_ICONST_0),
305
- new ConstantInstruction(InstructionConstants.OP_LDC, PARAMETER0_CLASS_INDEX),
306
- new SimpleInstruction(InstructionConstants.OP_AASTORE),
307
- new SimpleInstruction(InstructionConstants.OP_DUP),
308
- new SimpleInstruction(InstructionConstants.OP_ICONST_1),
309
- new ConstantInstruction(InstructionConstants.OP_LDC, PARAMETER1_CLASS_INDEX),
310
- new SimpleInstruction(InstructionConstants.OP_AASTORE),
311
- new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
312
- };
313
-
314
- // get[Declared]Method("someMethod", new Class[] {}).
315
- private final Instruction[] GET_METHOD_INSTRUCTIONS0 = new Instruction[]
316
- {
317
- new ConstantInstruction(InstructionConstants.OP_LDC, MEMBER_NAME_INDEX),
318
- new SimpleInstruction(InstructionConstants.OP_ICONST_0),
319
- new ConstantInstruction(InstructionConstants.OP_ANEWARRAY, 1),
320
- new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
321
- };
322
-
323
- // get[Declared]Method("someMethod", new Class[] { A.class }).
324
- private final Instruction[] GET_METHOD_INSTRUCTIONS1 = new Instruction[]
325
- {
326
- new ConstantInstruction(InstructionConstants.OP_LDC, MEMBER_NAME_INDEX),
327
- new SimpleInstruction(InstructionConstants.OP_ICONST_1),
328
- new ConstantInstruction(InstructionConstants.OP_ANEWARRAY, 1),
329
- new SimpleInstruction(InstructionConstants.OP_DUP),
330
- new SimpleInstruction(InstructionConstants.OP_ICONST_0),
331
- new ConstantInstruction(InstructionConstants.OP_LDC, PARAMETER0_CLASS_INDEX),
332
- new SimpleInstruction(InstructionConstants.OP_AASTORE),
333
- new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
334
- };
335
-
336
- // get[Declared]Method("someMethod", new Class[] { A.class, B.class }).
337
- private final Instruction[] GET_METHOD_INSTRUCTIONS2 = new Instruction[]
338
- {
339
- new ConstantInstruction(InstructionConstants.OP_LDC, MEMBER_NAME_INDEX),
340
- new SimpleInstruction(InstructionConstants.OP_ICONST_2),
341
- new ConstantInstruction(InstructionConstants.OP_ANEWARRAY, 1),
342
- new SimpleInstruction(InstructionConstants.OP_DUP),
343
- new SimpleInstruction(InstructionConstants.OP_ICONST_0),
344
- new ConstantInstruction(InstructionConstants.OP_LDC, PARAMETER0_CLASS_INDEX),
345
- new SimpleInstruction(InstructionConstants.OP_AASTORE),
346
- new SimpleInstruction(InstructionConstants.OP_DUP),
347
- new SimpleInstruction(InstructionConstants.OP_ICONST_1),
348
- new ConstantInstruction(InstructionConstants.OP_LDC, PARAMETER1_CLASS_INDEX),
349
- new SimpleInstruction(InstructionConstants.OP_AASTORE),
350
- new ConstantInstruction(InstructionConstants.OP_INVOKEVIRTUAL, 0),
351
- };
352
-
353
- // AtomicIntegerFieldUpdater.newUpdater(..., "someField").
354
- // AtomicLongFieldUpdater.newUpdater(..., "someField").
355
- // AtomicReferenceFieldUpdater.newUpdater(..., "someField").
356
- private final Instruction[] NEW_UPDATER_INSTRUCTIONS = new Instruction[]
357
- {
358
- new ConstantInstruction(InstructionConstants.OP_LDC, MEMBER_NAME_INDEX),
359
- new ConstantInstruction(InstructionConstants.OP_INVOKESTATIC, 0),
360
- };
361
-
362
-
363
- private final ClassPool programClassPool;
364
- private final ClassPool libraryClassPool;
365
- private final WarningPrinter notePrinter;
366
- private final StringMatcher noteFieldExceptionMatcher;
367
- private final StringMatcher noteMethodExceptionMatcher;
368
-
369
-
370
- private final InstructionSequenceMatcher constantGetFieldMatcher =
371
- new InstructionSequenceMatcher(GET_FIELD_CONSTANTS,
372
- CONSTANT_GET_FIELD_INSTRUCTIONS);
373
-
374
- private final InstructionSequenceMatcher constantGetDeclaredFieldMatcher =
375
- new InstructionSequenceMatcher(GET_DECLARED_FIELD_CONSTANTS,
376
- CONSTANT_GET_FIELD_INSTRUCTIONS);
377
-
378
- // private final InstructionSequenceMatcher constantGetConstructorMatcher0 =
379
- // new InstructionSequenceMatcher(GET_CONSTRUCTOR_CONSTANTS,
380
- // CONSTANT_GET_CONSTRUCTOR_INSTRUCTIONS0);
381
- //
382
- // private final InstructionSequenceMatcher constantGetDeclaredConstructorMatcher0 =
383
- // new InstructionSequenceMatcher(GET_DECLARED_CONSTRUCTOR_CONSTANTS,
384
- // CONSTANT_GET_CONSTRUCTOR_INSTRUCTIONS0);
385
- //
386
- // private final InstructionSequenceMatcher constantGetConstructorMatcher1 =
387
- // new InstructionSequenceMatcher(GET_CONSTRUCTOR_CONSTANTS,
388
- // CONSTANT_GET_CONSTRUCTOR_INSTRUCTIONS1);
389
- //
390
- // private final InstructionSequenceMatcher constantGetDeclaredConstructorMatcher1 =
391
- // new InstructionSequenceMatcher(GET_DECLARED_CONSTRUCTOR_CONSTANTS,
392
- // CONSTANT_GET_CONSTRUCTOR_INSTRUCTIONS1);
393
- //
394
- // private final InstructionSequenceMatcher constantGetConstructorMatcher2 =
395
- // new InstructionSequenceMatcher(GET_CONSTRUCTOR_CONSTANTS,
396
- // CONSTANT_GET_CONSTRUCTOR_INSTRUCTIONS2);
397
- //
398
- // private final InstructionSequenceMatcher constantGetDeclaredConstructorMatcher2 =
399
- // new InstructionSequenceMatcher(GET_DECLARED_CONSTRUCTOR_CONSTANTS,
400
- // CONSTANT_GET_CONSTRUCTOR_INSTRUCTIONS2);
401
-
402
- private final InstructionSequenceMatcher constantGetMethodMatcher0 =
403
- new InstructionSequenceMatcher(GET_METHOD_CONSTANTS,
404
- CONSTANT_GET_METHOD_INSTRUCTIONS0);
405
-
406
- private final InstructionSequenceMatcher constantGetDeclaredMethodMatcher0 =
407
- new InstructionSequenceMatcher(GET_DECLARED_METHOD_CONSTANTS,
408
- CONSTANT_GET_METHOD_INSTRUCTIONS0);
409
-
410
- private final InstructionSequenceMatcher constantGetMethodMatcher1 =
411
- new InstructionSequenceMatcher(GET_METHOD_CONSTANTS,
412
- CONSTANT_GET_METHOD_INSTRUCTIONS1);
413
-
414
- private final InstructionSequenceMatcher constantGetDeclaredMethodMatcher1 =
415
- new InstructionSequenceMatcher(GET_DECLARED_METHOD_CONSTANTS,
416
- CONSTANT_GET_METHOD_INSTRUCTIONS1);
417
-
418
- private final InstructionSequenceMatcher constantGetMethodMatcher2 =
419
- new InstructionSequenceMatcher(GET_METHOD_CONSTANTS,
420
- CONSTANT_GET_METHOD_INSTRUCTIONS2);
421
-
422
- private final InstructionSequenceMatcher constantGetDeclaredMethodMatcher2 =
423
- new InstructionSequenceMatcher(GET_DECLARED_METHOD_CONSTANTS,
424
- CONSTANT_GET_METHOD_INSTRUCTIONS2);
425
-
426
- private final InstructionSequenceMatcher constantGetIntegerUpdaterMatcher =
427
- new InstructionSequenceMatcher(NEW_INTEGER_UPDATER_CONSTANTS,
428
- CONSTANT_NEW_PRIMITIVE_UPDATER_INSTRUCTIONS);
429
-
430
- private final InstructionSequenceMatcher constantGetLongUpdaterMatcher =
431
- new InstructionSequenceMatcher(NEW_LONG_UPDATER_CONSTANTS,
432
- CONSTANT_NEW_PRIMITIVE_UPDATER_INSTRUCTIONS);
433
-
434
- private final InstructionSequenceMatcher constantGetReferenceUpdaterMatcher =
435
- new InstructionSequenceMatcher(NEW_REFERENCE_UPDATER_CONSTANTS,
436
- CONSTANT_NEW_REFERENCE_UPDATER_INSTRUCTIONS);
437
-
438
- private final InstructionSequenceMatcher getFieldMatcher =
439
- new InstructionSequenceMatcher(GET_FIELD_CONSTANTS,
440
- GET_FIELD_INSTRUCTIONS);
441
-
442
- private final InstructionSequenceMatcher getDeclaredFieldMatcher =
443
- new InstructionSequenceMatcher(GET_DECLARED_FIELD_CONSTANTS,
444
- GET_FIELD_INSTRUCTIONS);
445
-
446
- // private final InstructionSequenceMatcher getConstructorMatcher0 =
447
- // new InstructionSequenceMatcher(GET_CONSTRUCTOR_CONSTANTS,
448
- // GET_CONSTRUCTOR_INSTRUCTIONS0);
449
- //
450
- // private final InstructionSequenceMatcher getDeclaredConstructorMatcher0 =
451
- // new InstructionSequenceMatcher(GET_DECLARED_CONSTRUCTOR_CONSTANTS,
452
- // GET_CONSTRUCTOR_INSTRUCTIONS0);
453
-
454
- private final InstructionSequenceMatcher getConstructorMatcher1 =
455
- new InstructionSequenceMatcher(GET_CONSTRUCTOR_CONSTANTS,
456
- GET_CONSTRUCTOR_INSTRUCTIONS1);
457
-
458
- private final InstructionSequenceMatcher getDeclaredConstructorMatcher1 =
459
- new InstructionSequenceMatcher(GET_DECLARED_CONSTRUCTOR_CONSTANTS,
460
- GET_CONSTRUCTOR_INSTRUCTIONS1);
461
-
462
- private final InstructionSequenceMatcher getConstructorMatcher2 =
463
- new InstructionSequenceMatcher(GET_CONSTRUCTOR_CONSTANTS,
464
- GET_CONSTRUCTOR_INSTRUCTIONS2);
465
-
466
- private final InstructionSequenceMatcher getDeclaredConstructorMatcher2 =
467
- new InstructionSequenceMatcher(GET_DECLARED_CONSTRUCTOR_CONSTANTS,
468
- GET_CONSTRUCTOR_INSTRUCTIONS2);
469
-
470
- private final InstructionSequenceMatcher getMethodMatcher0 =
471
- new InstructionSequenceMatcher(GET_METHOD_CONSTANTS,
472
- GET_METHOD_INSTRUCTIONS0);
473
-
474
- private final InstructionSequenceMatcher getDeclaredMethodMatcher0 =
475
- new InstructionSequenceMatcher(GET_DECLARED_METHOD_CONSTANTS,
476
- GET_METHOD_INSTRUCTIONS0);
477
-
478
- private final InstructionSequenceMatcher getMethodMatcher1 =
479
- new InstructionSequenceMatcher(GET_METHOD_CONSTANTS,
480
- GET_METHOD_INSTRUCTIONS1);
481
-
482
- private final InstructionSequenceMatcher getDeclaredMethodMatcher1 =
483
- new InstructionSequenceMatcher(GET_DECLARED_METHOD_CONSTANTS,
484
- GET_METHOD_INSTRUCTIONS1);
485
-
486
- private final InstructionSequenceMatcher getMethodMatcher2 =
487
- new InstructionSequenceMatcher(GET_METHOD_CONSTANTS,
488
- GET_METHOD_INSTRUCTIONS2);
489
-
490
- private final InstructionSequenceMatcher getDeclaredMethodMatcher2 =
491
- new InstructionSequenceMatcher(GET_DECLARED_METHOD_CONSTANTS,
492
- GET_METHOD_INSTRUCTIONS2);
493
-
494
- private final InstructionSequenceMatcher getIntegerUpdaterMatcher =
495
- new InstructionSequenceMatcher(NEW_INTEGER_UPDATER_CONSTANTS,
496
- NEW_UPDATER_INSTRUCTIONS);
497
-
498
- private final InstructionSequenceMatcher getLongUpdaterMatcher =
499
- new InstructionSequenceMatcher(NEW_LONG_UPDATER_CONSTANTS,
500
- NEW_UPDATER_INSTRUCTIONS);
501
-
502
- private final InstructionSequenceMatcher getReferenceUpdaterMatcher =
503
- new InstructionSequenceMatcher(NEW_REFERENCE_UPDATER_CONSTANTS,
504
- NEW_UPDATER_INSTRUCTIONS);
505
-
506
- private final MemberFinder memberFinder = new MemberFinder();
507
-
508
-
509
- // Fields acting as parameters for the visitors.
510
- private Clazz referencedClass;
511
- private String descriptor;
512
- private boolean isDeclared;
513
- private boolean isField;
514
-
515
-
516
-
517
- /**
518
- * Creates a new DynamicMemberReferenceInitializer.
519
- */
520
- public DynamicMemberReferenceInitializer(ClassPool programClassPool,
521
- ClassPool libraryClassPool,
522
- WarningPrinter notePrinter,
523
- StringMatcher noteFieldExceptionMatcher,
524
- StringMatcher noteMethodExceptionMatcher)
525
- {
526
- this.programClassPool = programClassPool;
527
- this.libraryClassPool = libraryClassPool;
528
- this.notePrinter = notePrinter;
529
- this.noteFieldExceptionMatcher = noteFieldExceptionMatcher;
530
- this.noteMethodExceptionMatcher = noteMethodExceptionMatcher;
531
- }
532
-
533
-
534
- // Implementations for InstructionVisitor.
535
-
536
- public void visitAnyInstruction(Clazz clazz, Method method, CodeAttribute codeAttribute, int offset, Instruction instruction)
537
- {
538
- // Try to match the SomeClass.class.getField("someField") construct.
539
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
540
- constantGetFieldMatcher,
541
- getFieldMatcher, true, false, null, null);
542
-
543
- // Try to match the SomeClass.class.getDeclaredField("someField") construct.
544
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
545
- constantGetDeclaredFieldMatcher,
546
- getDeclaredFieldMatcher, true, true, null, null);
547
-
548
- // // Try to match the SomeClass.class.getConstructor(new Class[]
549
- // // {}) construct.
550
- // matchGetMember(clazz, method, codeAttribute, offset, instruction,
551
- // cnull, //onstantGetConstructorMatcher0,
552
- // getConstructorMatcher0, false, false,
553
- // ClassConstants.INTERNAL_METHOD_NAME_INIT, null);
554
- //
555
- // // Try to match the SomeClass.class.getDeclaredConstructor(new Class[]
556
- // // {}) construct.
557
- // matchGetMember(clazz, method, codeAttribute, offset, instruction,
558
- // null, //constantGetDeclaredConstructorMatcher0,
559
- // getDeclaredConstructorMatcher0, false, true,
560
- // ClassConstants.INTERNAL_METHOD_NAME_INIT, null);
561
-
562
- // Try to match the SomeClass.class.getConstructor(new Class[]
563
- // { A.class }) construct.
564
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
565
- null, //constantGetConstructorMatcher1,
566
- getConstructorMatcher1, false, false,
567
- ClassConstants.INTERNAL_METHOD_NAME_INIT, null);
568
-
569
- // Try to match the SomeClass.class.getDeclaredConstructor(new Class[]
570
- // { A.class }) construct.
571
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
572
- null, //constantGetDeclaredConstructorMatcher1,
573
- getDeclaredConstructorMatcher1, false, true,
574
- ClassConstants.INTERNAL_METHOD_NAME_INIT, null);
575
-
576
- // Try to match the SomeClass.class.getConstructor(new Class[]
577
- // { A.class, B.class }) construct.
578
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
579
- null, //constantGetConstructorMatcher2,
580
- getConstructorMatcher2, false, false,
581
- ClassConstants.INTERNAL_METHOD_NAME_INIT, null);
582
-
583
- // Try to match the SomeClass.class.getDeclaredConstructor(new Class[]
584
- // { A.class, B.class }) construct.
585
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
586
- null, //constantGetDeclaredConstructorMatcher2,
587
- getDeclaredConstructorMatcher2, false, true,
588
- ClassConstants.INTERNAL_METHOD_NAME_INIT, null);
589
-
590
- // Try to match the SomeClass.class.getMethod("someMethod", new Class[]
591
- // {}) construct.
592
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
593
- constantGetMethodMatcher0,
594
- getMethodMatcher0, false, false, null, null);
595
-
596
- // Try to match the SomeClass.class.getDeclaredMethod("someMethod",
597
- // new Class[] {}) construct.
598
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
599
- constantGetDeclaredMethodMatcher0,
600
- getDeclaredMethodMatcher0, false, true, null, null);
601
-
602
- // Try to match the SomeClass.class.getMethod("someMethod", new Class[]
603
- // { A.class }) construct.
604
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
605
- constantGetMethodMatcher1,
606
- getMethodMatcher1, false, false, null, null);
607
-
608
- // Try to match the SomeClass.class.getDeclaredMethod("someMethod",
609
- // new Class[] { A.class }) construct.
610
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
611
- constantGetDeclaredMethodMatcher1,
612
- getDeclaredMethodMatcher1, false, true, null, null);
613
-
614
- // Try to match the SomeClass.class.getMethod("someMethod", new Class[]
615
- // { A.class, B.class }) construct.
616
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
617
- constantGetMethodMatcher2,
618
- getMethodMatcher2, false, false, null, null);
619
-
620
- // Try to match the SomeClass.class.getDeclaredMethod("someMethod",
621
- // new Class[] { A.class, B.class }) construct.
622
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
623
- constantGetDeclaredMethodMatcher2,
624
- getDeclaredMethodMatcher2, false, true, null, null);
625
-
626
- // Try to match the AtomicIntegerFieldUpdater.newUpdater(
627
- // SomeClass.class, "someField") construct.
628
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
629
- constantGetIntegerUpdaterMatcher,
630
- getIntegerUpdaterMatcher, true, false, null,
631
- "" + ClassConstants.INTERNAL_TYPE_INT);
632
-
633
- // Try to match the AtomicLongFieldUpdater.newUpdater(
634
- // SomeClass.class, "someField") construct.
635
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
636
- constantGetLongUpdaterMatcher,
637
- getLongUpdaterMatcher, true, false, null,
638
- "" + ClassConstants.INTERNAL_TYPE_LONG);
639
-
640
- // Try to match the AtomicReferenceFieldUpdater.newUpdater(
641
- // SomeClass.class, SomeClass.class, "someField") construct.
642
- matchGetMember(clazz, method, codeAttribute, offset, instruction,
643
- constantGetReferenceUpdaterMatcher,
644
- getReferenceUpdaterMatcher, true, false, null, null);
645
- }
646
-
647
-
648
- /**
649
- * Tries to match the next instruction and fills out the string constant
650
- * or prints out a note accordingly.
651
- */
652
- private void matchGetMember(Clazz clazz,
653
- Method method,
654
- CodeAttribute codeAttribute,
655
- int offset,
656
- Instruction instruction,
657
- InstructionSequenceMatcher constantSequenceMatcher,
658
- InstructionSequenceMatcher variableSequenceMatcher,
659
- boolean isField,
660
- boolean isDeclared,
661
- String defaultName,
662
- String defaultDescriptor)
663
- {
664
- if (constantSequenceMatcher != null)
665
- {
666
- // Try to match the next instruction in the constant sequence.
667
- instruction.accept(clazz, method, codeAttribute, offset,
668
- constantSequenceMatcher);
669
-
670
- // Did we find a match to fill out the string constant?
671
- if (constantSequenceMatcher.isMatching())
672
- {
673
- initializeStringReference(clazz,
674
- constantSequenceMatcher,
675
- isField,
676
- isDeclared,
677
- defaultDescriptor);
678
-
679
- // Don't look for the dynamic construct.
680
- variableSequenceMatcher.reset();
681
- }
682
- }
683
-
684
- // Try to match the next instruction in the variable sequence.
685
- instruction.accept(clazz, method, codeAttribute, offset,
686
- variableSequenceMatcher);
687
-
688
- // Did we find a match to print out a note?
689
- if (variableSequenceMatcher.isMatching())
690
- {
691
- // Print out a note about the dynamic invocation.
692
- printDynamicInvocationNote(clazz,
693
- variableSequenceMatcher,
694
- isField,
695
- isDeclared,
696
- defaultName,
697
- defaultDescriptor);
698
- }
699
- }
700
-
701
-
702
- /**
703
- * Initializes the reference of the matched string constant to the
704
- * referenced class member and its class.
705
- */
706
- private void initializeStringReference(Clazz clazz,
707
- InstructionSequenceMatcher constantSequenceMatcher,
708
- boolean isField,
709
- boolean isDeclared,
710
- String defaultDescriptor)
711
- {
712
- this.isField = isField;
713
- this.isDeclared = isDeclared;
714
-
715
- // Get the member's class.
716
- int classIndex = constantSequenceMatcher.matchedConstantIndex(CLASS_INDEX);
717
- clazz.constantPoolEntryAccept(classIndex, this);
718
-
719
- // Get the field's reference type, if applicable.
720
- int typeClassIndex = constantSequenceMatcher.matchedConstantIndex(TYPE_CLASS_INDEX);
721
- descriptor = typeClassIndex <= 0 ? defaultDescriptor :
722
- ClassUtil.internalTypeFromClassName(clazz.getClassName(typeClassIndex));
723
-
724
- // Fill out the matched string constant.
725
- int memberNameIndex = constantSequenceMatcher.matchedConstantIndex(MEMBER_NAME_INDEX);
726
- clazz.constantPoolEntryAccept(memberNameIndex, this);
727
- }
728
-
729
-
730
- // Implementations for ConstantVisitor.
731
-
732
- /**
733
- * Remembers the referenced class.
734
- */
735
- public void visitClassConstant(Clazz clazz, ClassConstant classConstant)
736
- {
737
- if (DEBUG)
738
- {
739
- System.out.println("DynamicMemberReferenceInitializer: ["+clazz.getName()+"] matched class ["+classConstant.getName(clazz)+"]");
740
- }
741
-
742
- // Remember the referenced class.
743
- referencedClass = ClassUtil.isInternalArrayType(classConstant.getName(clazz)) ?
744
- null :
745
- classConstant.referencedClass;
746
- }
747
-
748
-
749
- /**
750
- * Fills out the link to the referenced class member.
751
- */
752
- public void visitStringConstant(Clazz clazz, StringConstant stringConstant)
753
- {
754
- if (referencedClass != null)
755
- {
756
- String name = stringConstant.getString(clazz);
757
-
758
- if (DEBUG)
759
- {
760
- System.out.println("DynamicMemberReferenceInitializer: ["+clazz.getName()+"] matched string ["+name+"]");
761
- }
762
-
763
- // See if we can find the referenced class member locally, or
764
- // somewhere in the hierarchy.
765
- Member referencedMember = isDeclared ? isField ?
766
- (Member)referencedClass.findField(name, descriptor) :
767
- (Member)referencedClass.findMethod(name, descriptor) :
768
- (Member)memberFinder.findMember(clazz,
769
- referencedClass,
770
- name,
771
- descriptor,
772
- isField);
773
- if (referencedMember != null)
774
- {
775
- stringConstant.referencedMember = referencedMember;
776
- stringConstant.referencedClass = isDeclared ?
777
- referencedClass :
778
- memberFinder.correspondingClass();
779
- }
780
- }
781
- }
782
-
783
-
784
- // Small utility methods.
785
-
786
- /**
787
- * Prints out a note on the matched dynamic invocation, if necessary.
788
- */
789
- private void printDynamicInvocationNote(Clazz clazz,
790
- InstructionSequenceMatcher noteSequenceMatcher,
791
- boolean isField,
792
- boolean isDeclared,
793
- String defaultName,
794
- String defaultDescriptor)
795
- {
796
- // Print out a note about the dynamic invocation.
797
- if (notePrinter != null &&
798
- notePrinter.accepts(clazz.getName()))
799
- {
800
- // Is the class member name in the list of exceptions?
801
- StringMatcher noteExceptionMatcher = isField ?
802
- noteFieldExceptionMatcher :
803
- noteMethodExceptionMatcher;
804
-
805
- int memberNameIndex = noteSequenceMatcher.matchedConstantIndex(MEMBER_NAME_INDEX);
806
- String memberName = memberNameIndex <= 0 ? defaultName :
807
- clazz.getStringString(memberNameIndex);
808
-
809
- if (noteExceptionMatcher == null ||
810
- !noteExceptionMatcher.matches(memberName))
811
- {
812
- // Compose the external member name and partial descriptor.
813
- String externalMemberDescription = memberName;
814
-
815
- if (!isField)
816
- {
817
- externalMemberDescription += '(';
818
- for (int count = 0; count < 2; count++)
819
- {
820
- int memberArgumentIndex = noteSequenceMatcher.matchedConstantIndex(
821
- PARAMETER0_CLASS_INDEX + count);
822
- if (memberArgumentIndex > 0)
823
- {
824
- if (count > 0)
825
- {
826
- externalMemberDescription += ',';
827
- }
828
- String className = clazz.getClassName(memberArgumentIndex);
829
- externalMemberDescription += ClassUtil.isInternalArrayType(className) ?
830
- ClassUtil.externalType(className) :
831
- ClassUtil.externalClassName(className);
832
- }
833
- }
834
- externalMemberDescription += ')';
835
- }
836
-
837
- // Print out the actual note.
838
- notePrinter.print(clazz.getName(),
839
- "Note: " +
840
- ClassUtil.externalClassName(clazz.getName()) +
841
- " accesses a " +
842
- (isDeclared ? "declared " : "") +
843
- (isField ? "field" :
844
- memberName.equals(ClassConstants.INTERNAL_METHOD_NAME_INIT) ?
845
- "constructor" : "method") +
846
- " '" +
847
- externalMemberDescription +
848
- "' dynamically");
849
-
850
- // Print out notes about potential candidates.
851
- ClassVisitor classVisitor;
852
-
853
- if (isField)
854
- {
855
- classVisitor = defaultDescriptor == null ?
856
- new AllFieldVisitor(
857
- new MemberNameFilter(memberName, this)) :
858
- new AllFieldVisitor(
859
- new MemberNameFilter(memberName,
860
- new MemberDescriptorFilter(defaultDescriptor, this)));
861
- }
862
- else
863
- {
864
- // Compose the partial method descriptor.
865
- String methodDescriptor = "(";
866
- for (int count = 0; count < 2; count++)
867
- {
868
- int memberArgumentIndex = noteSequenceMatcher.matchedConstantIndex(PARAMETER0_CLASS_INDEX + count);
869
- if (memberArgumentIndex > 0)
870
- {
871
- String className = clazz.getClassName(memberArgumentIndex);
872
- methodDescriptor += ClassUtil.isInternalArrayType(className) ?
873
- className :
874
- ClassUtil.internalTypeFromClassName(className);
875
- }
876
- }
877
- methodDescriptor += ")L***;";
878
-
879
- classVisitor =
880
- new AllMethodVisitor(
881
- new MemberNameFilter(memberName,
882
- new MemberDescriptorFilter(methodDescriptor, this)));
883
- }
884
-
885
- programClassPool.classesAcceptAlphabetically(classVisitor);
886
- libraryClassPool.classesAcceptAlphabetically(classVisitor);
887
- }
888
- }
889
- }
890
-
891
-
892
- // Implementations for MemberVisitor.
893
-
894
- public void visitProgramField(ProgramClass programClass, ProgramField programField)
895
- {
896
- if (notePrinter.accepts(programClass.getName()))
897
- {
898
- System.out.println(" Maybe this is program field '" +
899
- ClassUtil.externalFullClassDescription(0, programClass.getName()) +
900
- " { " +
901
- ClassUtil.externalFullFieldDescription(0, programField.getName(programClass), programField.getDescriptor(programClass)) +
902
- "; }'");
903
- }
904
- }
905
-
906
-
907
- public void visitProgramMethod(ProgramClass programClass, ProgramMethod programMethod)
908
- {
909
- if (notePrinter.accepts(programClass.getName()))
910
- {
911
- System.out.println(" Maybe this is program method '" +
912
- ClassUtil.externalFullClassDescription(0, programClass.getName()) +
913
- " { " +
914
- ClassUtil.externalFullMethodDescription(programClass.getName(), 0, programMethod.getName(programClass), programMethod.getDescriptor(programClass)) +
915
- "; }'");
916
- }
917
- }
918
-
919
-
920
- public void visitLibraryField(LibraryClass libraryClass, LibraryField libraryField)
921
- {
922
- if (notePrinter.accepts(libraryClass.getName()))
923
- {
924
- System.out.println(" Maybe this is library field '" +
925
- ClassUtil.externalFullClassDescription(0, libraryClass.getName()) +
926
- " { " +
927
- ClassUtil.externalFullFieldDescription(0, libraryField.getName(libraryClass), libraryField.getDescriptor(libraryClass)) +
928
- "; }'");
929
- }
930
- }
931
-
932
-
933
- public void visitLibraryMethod(LibraryClass libraryClass, LibraryMethod libraryMethod)
934
- {
935
- if (notePrinter.accepts(libraryClass.getName()))
936
- {
937
- System.out.println(" Maybe this is library method '" +
938
- ClassUtil.externalFullClassDescription(0, libraryClass.getName()) +
939
- " { " +
940
- ClassUtil.externalFullMethodDescription(libraryClass.getName(), 0, libraryMethod.getName(libraryClass), libraryMethod.getDescriptor(libraryClass)) +
941
- "; }'");
942
- }
943
- }
944
- }