project cleanup

- test classes (src/test/*) moved to separate root
- stray .class files dropped
- binary files (bin/, dist/full/, dist/obfuscated/) excluded from the repo
- .classpath and .gitignore updated accordingly
- invalid import statements removed
master
Roman Shevchenko 11 years ago
parent 4d48812ad0
commit 78ef309b3e
  1. 1
      .classpath
  2. 3
      .gitignore
  3. 3
      .settings/org.eclipse.core.resources.prefs
  4. 6
      bin/.gitignore
  5. BIN
      dist/full/fernflower.jar
  6. BIN
      dist/obfuscated/fernflower.jar
  7. 1
      src/de/fernflower/modules/decompiler/DomHelper.java
  8. 1
      src/de/fernflower/modules/decompiler/sforms/SSAConstructorSparseEx.java
  9. 417
      src/test/FernflowerTest.java
  10. 40
      src/test/JetTest.java
  11. 95
      src/test/JunitTest.java
  12. 81
      src/test/SumUpClasses.java
  13. BIN
      src/test/TestAnnotationsEclipse$MyAnnotation.class
  14. BIN
      src/test/TestAnnotationsEclipse$TestInner.class
  15. BIN
      src/test/TestAnnotationsEclipse.class
  16. 54
      src/test/TestInput.java
  17. 38
      src/test/TestRapc.java
  18. 38
      src/test/TestRuntime1_4_2_03.java
  19. 36
      src/test/TestSelf.java
  20. 69
      src/test/TestValidateXml.java
  21. 38
      src/test/TestYWorks.java
  22. 67
      src/test/VladDebug.java
  23. BIN
      src/test/input/TestJavac7.class
  24. BIN
      src/test/input/TestJavac8.class
  25. 55
      src/test/misc/ObfuscatedExceptionDetector.java
  26. 1373
      src/test/misc/en/IrredTest.java
  27. 0
      test/test/BradTest.java
  28. 0
      test/test/TestAnnotationsEclipse.java
  29. 0
      test/test/input/TestEclipse7.java
  30. 0
      test/test/input/TestJavac7.java
  31. 0
      test/test/input/TestJavac8.java
  32. 0
      test/test/input/TestLoop.java
  33. 0
      test/test/misc/ExtTest.java
  34. 0
      test/test/misc/GenericTest.java
  35. 0
      test/test/misc/ITest.java
  36. 0
      test/test/misc/MainClass.java
  37. 0
      test/test/misc/MiscTest.java
  38. 0
      test/test/misc/MultipleClassTest.java
  39. 0
      test/test/misc/ParentFieldTest.java
  40. 0
      test/test/misc/SuperTest.java
  41. 0
      test/test/misc/ann/RequestForEnhancement.java
  42. 0
      test/test/misc/en/AutocastTest.java
  43. 0
      test/test/misc/en/FastSetTest.java
  44. 0
      test/test/misc/en/FinallyTest.java
  45. 0
      test/test/misc/en/Foo.java
  46. 0
      test/test/misc/en/InnerTest$1.java
  47. 0
      test/test/misc/en/InnerTest.java
  48. 0
      test/test/misc/en/InnerTestOld.java
  49. 0
      test/test/misc/en/ListInsertTest.java
  50. 0
      test/test/misc/en/Operation.java
  51. 0
      test/test/misc/en/SwitchInTest.java
  52. 0
      test/test/misc/en/TestOperation.java
  53. 0
      test/test/output/TestEclipse7.java
  54. 0
      test/test/output/TestJavac7.java
  55. 0
      test/test/output/TestJavac8.java
  56. 0
      test/test/util/DotExporter.java
  57. 0
      test/test/util/MemoryMonitor.java
  58. 0
      test/test/util/Timer.java
  59. 0
      test/test/util/ZipStripper.java

@ -2,6 +2,7 @@
<classpath> <classpath>
<classpathentry kind="src" path="src"/> <classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="timer"/> <classpathentry kind="src" path="timer"/>
<classpathentry kind="src" path="test"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="lib" path="lib/timer/timer.jar"/> <classpathentry kind="lib" path="lib/timer/timer.jar"/>
<classpathentry kind="output" path="bin"/> <classpathentry kind="output" path="bin"/>

3
.gitignore vendored

@ -0,0 +1,3 @@
bin/
dist/full/
dist/obfuscated/

@ -1,3 +1,2 @@
#Mon Oct 11 16:34:37 CEST 2010
eclipse.preferences.version=1 eclipse.preferences.version=1
encoding//src/test/misc/en/InnerTest.java=UTF-8 encoding//test/test/misc/en/InnerTest.java=UTF-8

6
bin/.gitignore vendored

@ -1,6 +0,0 @@
/HRTimerResolution.class
/SystemTimerResolution.class
/com
/de
/native
/test

Binary file not shown.

Binary file not shown.

@ -25,7 +25,6 @@ import java.util.LinkedList;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
import test.util.DotExporter;
import de.fernflower.code.cfg.BasicBlock; import de.fernflower.code.cfg.BasicBlock;
import de.fernflower.code.cfg.ControlFlowGraph; import de.fernflower.code.cfg.ControlFlowGraph;
import de.fernflower.code.cfg.ExceptionRangeCFG; import de.fernflower.code.cfg.ExceptionRangeCFG;

@ -21,7 +21,6 @@ import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Map.Entry; import java.util.Map.Entry;
import test.util.DotExporter;
import de.fernflower.code.CodeConstants; import de.fernflower.code.CodeConstants;
import de.fernflower.modules.decompiler.exps.AssignmentExprent; import de.fernflower.modules.decompiler.exps.AssignmentExprent;
import de.fernflower.modules.decompiler.exps.Exprent; import de.fernflower.modules.decompiler.exps.Exprent;

@ -1,417 +0,0 @@
package test;
import java.io.File;
import java.util.Date;
import java.util.HashMap;
import de.fernflower.main.decompiler.ConsoleDecompiler;
public class FernflowerTest {
public static void main(String[] args) {
try {
//TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll");
Date start = new Date();
ConsoleDecompiler decompiler = new ConsoleDecompiler(new HashMap<String, Object>(){{put("log", "warn");put("ren", "1");}});
// MemoryMonitor.run = true;
// new Thread(new MemoryMonitor()).start();
// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\"), true);
// context.addSpace(new File("C:\\revjava\\remote\\data\\input\\"), true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\smith\\EventProcessor.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514224046740_rggbqdfe\\rh.class", true); // irreducible CFG
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514180223996_zxwdatbw\\TryCatchFinallyClass.class", true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\temp\\AndroidFileBrowser.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\temp\\SnakeView.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ru.zip"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\bt1.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\CityGuideJava.jar"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\toschart.jar"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\dostoevski.181223.jar"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\au.class"), true); // highly obfuscated exception handlers - sequence!
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\carmobile2.jar"), true); // highly obfuscated exception handlers - sequence!
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\tempjars\\Paris_Nights[sp-c.ru]ygtgJ6.jar"), true); // Heap space
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\tempjars\\PlanetN.jar"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\PasswordDefender1.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\PasswordDefender2.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\Emyoolay.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\h1.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\ba1.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\bolt_pg_0.jar"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\masl\\AbstractProgressNotifier.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\f.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\searchTab1_jsp1.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\searchTab1_jsp1_1.class"), true);
decompiler.addSpace(new File("D:\\temp_c\\workspace\\Fernflower\\bin\\test\\BradTest.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\cls1209_Object.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\cls540_BaseFunction1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\SwitchInTest.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\al.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\InnerTest.zip"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\InnerTest$1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\InnerTest.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Context.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Class$1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Class.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\SimpleDateFormat1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\z.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\client.jar"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Manifest1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\MemoryMonitor1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\IrreducibleCFGDeobfuscator$1Node.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\IrreducibleCFGDeobfuscator1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\PrintStreamLogger1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\b.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\toonel_uo-5050.jar"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\toonel_jdo.jar"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\i.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\BasicGroupListUI$a_.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\p1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\v.class"), true); // invalid class structure
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Game.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\out.zip"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Logic.class"), true); // long processing time
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\pupkin\\Support2.class"), true); // irreducible CFG
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\CommandExecutor.class"), true); // sophisticated finally
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\cy1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\gmail-g.jar"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\LDIFImporter1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\d1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\com.sonyericsson.cs_ma3_client_sc_2.9.5.16.jar"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\z1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\FactoryFinder1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\e.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\IndexWriter.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\ar1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\tcf511.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\TryCatchFinallyClass2.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\FileUtils.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\QuicktimeParser$TrakList1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\DoExternalProcessMinwon.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Main.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\TryCatchFinallyClassForTest.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\PmrCreatePMR.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\RetainSdi(2).zip"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\tcf26x1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\GalleryStorageExtras.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\ExprProcessor.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Compiler1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\ServerManagerImpl.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\RepositoryId1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\ElemApplyTemplates.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\ValueHandlerImpl.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\RequestProcessor.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\PropertyEditorManager.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\JdbcOdbcObject.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\searchTab1_jsp1.class"), true);
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\o_class.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\o1_class.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\o_class.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\o_class1.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\FinallyTest.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\J_class.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\icc.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\ca.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\e.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\at.class"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\cab.jar"), true);
// decompiler.addSpace(new File("C:\\Oleg\\dec\\myotr\\"), true); // temp methods of inner classes
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\temp\\google\\"), true); // temp methods of inner classes
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\appengine-api-1.0-sdk-1.2.5-rp.jar"), true); // temp methods of inner classes
// decompiler.addSpace(new File("C:\\Oleg\\appengine-api-1.0-sdk-1.2.5-rp.jar"), true); // temp methods of inner classes
// decompiler.addSpace(new File("C:\\Oleg\\e.class"), true); // irreducible CFG - general case
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\e.class"), true); // irreducible CFG - general case
// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\opera\\output\\opera4_2.jar"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ab.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\searchTab1_jsp.class"), true); // full iteration!
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\b.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\alesa.jar"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\MetaClassRegistryImpl1.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\MetaClassRegistryImpl$1.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\MetaClassRegistryImpl$2.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\CBZip2OutputStream1.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\MicroFMEIBDialog$MicroFMEIBMouse.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\String.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ArticleBean.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\JdbcOdbcObject1.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\jdbc\\odbc\\JdbcOdbcObject.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\RasterPrinterJob1.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\print\\RasterPrinterJob.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\javax\\print\\MimeType.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\Application.class"), true); // self reference var replacement
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\JmxBuilderTools.class"), true); // merging blocks!
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\groovy-all-1.6.3.jar"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ABSInitializeLoginCtx.class"), true); // comparison instructions double, float, long!
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\hm20ipixa.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\jmf.jar"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\Asn1PerEncodeBuffer1.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\asn1rt.jar"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\LLString.class"), true); // wrong array index!
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\lapi.jar"), true);
// context.addSpace(new File("C:\\revjava\\remote\\data\\input\\20090521062758280_kmxhxsgj\\ab.class"), true);
// context.addSpace(new File("C:\\revjava\\remote\\data\\input\\20090521023110030_rlkkkxde\\"), true);
// context.addSpace(new File("C:\\revjava\\remote\\data\\input\\20090515012813271_ktxfuavw\\"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\g1.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\structure101-java-b428.jar"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\NinjaVideoApplet0.3.9.jar"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\DRMConfigClient.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\DRMConfigClient$1.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\DRMConfigClient$ConfigKeys.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ChartQuery.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ChartQuery$1.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ChartQuery$ChartQueryListener.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\innerprivate\\"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\awt\\windows\\WScrollPanePeer$Adjustor.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\awt\\windows\\WScrollPanePeer$ScrollEvent.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\awt\\windows\\WScrollPanePeer.class"), true);
// context.addSpace(new File("C:\\revjava\\remote\\data\\input\\20090520235744982_egloemdo\\"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\conversion.zip"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\toonel.jar"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\msmapi.jar"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\skynin\\"), true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\skynin\\MSMAPI.class", true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments1.class"), true); // invalid bytecode
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments2.class"), true); // invalid bytecode
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments3.class"), true); // invalid bytecode
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments4.class"), true); // protected range extended!
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments5.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments6.class"), true); // protected range extended!
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments7.class"), true); // highly obfuscated!!
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments8.class"), true); // highly obfuscated!!
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments9.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments10.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments11.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments12.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments13.class"), true); // highly obfuscated!!
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\com\\sun\\jndi\\ldap\\Connection.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\Connection.class", true);
// context.addClass("TestByte", "D:\\Nonbku\\workspace_3.4\\Fernflower\\bin\\struct\\attr\\MiscTest.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\pupkin\\Support2.class", true); // irreducible CFG
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\security\\jgss\\GSSNameImpl.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\awt\\image\\ImageFetcher.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\HttpURLConnection.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\net\\www\\protocol\\http\\HttpURLConnection.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\SocketChannelImpl.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\nio\\ch\\SocketChannelImpl.class", true);
// context.addSpace(new File("C:\\Temp\\fernflower\\rapc\\"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\y\\"), true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\layout\\router\\OrthogonalEdgeRouter.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\java\\util\\prefs\\WindowsPreferences.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\ag1.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\aa1.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\ar.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\aa.class", true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\opera-mini-latest-advanced-int.jar"), true);
// context.addSpace(new File("C:\\revjava\\remote\\data\\input\\20090522175436366_ewwrrmsm\\"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\f1.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\logunov\\"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\logunov\\Lm.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\logunov\\Lm1.class"), true);
// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\balmaster\\"), true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\tcf10.class", true);
// context.addClass("TestByte", "D:\\Nonbku\\workspace_3.4\\autspl\\bin\\ThreadMain.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\SysEnv.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\e$1.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$InfoPosition.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_j.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_d.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_n.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_g.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$5.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$6.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_l.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_c.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$11.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$12.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_k.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$9.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$8.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$10.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$7.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_f.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_h.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_m.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$3.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$2.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$4.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$ItemEditorOwner.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_b.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_b$_b.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$Theme.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_i.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$1.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_e.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514095232398_nuopioet\\a5.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514171647485_mjdkkaci\\Main.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\BIDVBankClientAdapter.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090518082259353_fkwzbhxj\\Logic.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090518114646899_mrahkrxa\\N.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090518114718283_pckzzhrp\\M.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\DoExternalProcessMinwon.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090515053147932_unktnred\\DoExternalProcessMinwon.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\TryCatchFinallyClass.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514180437746_raelweyb\\TryCatchFinallyClass.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514193807307_xfbwelrk\\AlertDataManager.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514193807307_xfbwelrk\\AlertDataManager$LensedAlertDataQueryConnector.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514193807307_xfbwelrk\\AlertDataManager$DomainCallback.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514193807307_xfbwelrk\\AlertDataManager$AlertDataQueryConnector.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514193807307_xfbwelrk\\AlertDataManager$AlertDataQueryConnector$1.class", true);
// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090517092633378_kmnzqbgb\\RobotsApplet.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\e.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\e$1.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\e$2.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\e$3.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\e$4.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\e$5.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\SunGraphics2D.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\java2d\\SunGraphics2D.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\Channels$ReadableByteChannelImpl.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\java\\nio\\channels\\Channels$ReadableByteChannelImpl.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\jdbc\\odbc\\JdbcOdbcObject.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\PKCS7.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\security\\pkcs\\PKCS7.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\StepPattern.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\org\\apache\\xpath\\patterns\\StepPattern.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\ContextMatchStepPattern.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\org\\apache\\xpath\\patterns\\ContextMatchStepPattern.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\org\\apache\\xalan\\transformer\\TransformerImpl.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\DatagramChannelImpl.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\nio\\ch\\DatagramChannelImpl.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\rapc\\net\\rim\\tools\\compiler\\d\\a5.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\java\\awt\\font\\TextLayout.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\com\\sun\\corba\\se\\internal\\iiop\\CDRInputStream_1_0.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\com\\sun\\java\\swing\\plaf\\motif\\MotifLookAndFeel.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\com\\sun\\imageio\\plugins\\jpeg\\JPEGMetadata.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\text\\resources\\DateFormatZoneData_sv.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\java\\nio\\channels\\FileChannel.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\javax\\swing\\tree\\TreePath.class", true);
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\ICC_Transform.class", true);
// block inlining!
// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\LdapReferralContext.class", true);
// context.addSpace(new File("C:\\bahn\\fullcode\\lgsrv20batch\\bin\\"), true);
// context.addSpace(new File("C:\\Temp\\tmp\\enum\\struct\\attr\\dest\\struct\\attr\\en\\"), true);
// context.addSpace(new File("D:\\Nonbku\\workspace\\Fernflower\\bin\\struct\\attr\\en\\"), true);
// context.addSpace(new File("D:\\Nonbku\\workspace\\InnerTest\\bin\\data\\"), true);
// context.addSpace(new File("D:\\Nonbku\\workspace\\Fernflower\\bin\\struct\\attr\\en\\"), true);
// context.addSpace(new File("D:\\Nonbku\\workspace\\Fernflower\\bin\\"), true);
// context.addSpace(new File("C:\\bahn\\lfg\\geovis\\GeoVisStandalone\\bin\\"), true);
// context.addSpace(new File("C:\\bahn\\lfg\\geovis\\GeoVisCommon\\bin\\"), true);
// context.addSpace(new File("C:\\bahn\\lfg\\geovis\\GeoVisClient\\gvCl30Api\\build\\"), true);
// context.addSpace(new File("C:\\bahn\\lfg\\geovis\\GeoVisClient\\gvCl40Ext\\build\\"), true);
// context.addSpace(new File("C:\\bahn\\lfg\\geovis\\GeoVisClient\\gvCl30Api\\build\\de\\dbsystems\\geovis\\gui\\view\\"), true);
// fl.structcontext = context;
// fl.decompileContext(context, new File("D:\\Nonbku\\workspace_3.4\\JavaRuntime1_4_2_03\\src\\"));
// fl.decompileContext(context, new File("C:\\bahn\\fullcode\\LfG\\server\\lgsrv20batch\\src\\java\\"));
// fl.decompileContext(context, new File("D:\\Nonbku\\workspace\\InnerTest\\src\\struct\\attr\\en\\"));
// fl.decompileContext(context, new File("D:\\Nonbku\\workspace\\Fernflower_dec\\src\\"));
// fl.decompileContext(context, new File("C:\\Temp\\fernflower\\rapc_ff\\"));
// fl.decompileContext(context, new File("C:\\Temp\\fernflower\\y_ff\\"));
// fl.decompileContext(context, new File("C:\\Temp\\fernflower\\dec\\"));
// fl.decompileContext(context, new File("C:\\Temp\\fernflower\\dec\\output\\"));
// decompiler.decompileContext(new File("C:\\Oleg\\dec\\output\\"));
decompiler.decompileContext(new File("D:\\temp_c\\workspace\\output\\"));
// decompiler.decompileContext(new File("C:\\Temp\\fernflower\\dec\\output\\"));
// decompiler.decompileContext(new File("C:\\Temp\\fernflower\\dec\\opera\\output\\dec\\"));
// fl.decompileContext(context, new File("C:\\bahn\\lfg\\geovis_dec\\GeoVisStandalone\\starter\\src\\java\\"));
// fl.decompileContext(context, new File("C:\\bahn\\lfg\\geovis_dec\\GeoVisCommon\\gvCom30Api\\src\\java\\"));
// fl.decompileContext(context, new File("C:\\bahn\\lfg\\geovis_dec\\GeoVisClient\\gvCl30Api\\src\\java\\"));
// fl.decompileContext(context, new File("C:\\bahn\\lfg\\geovis_dec\\GeoVisClient\\gvCl40Ext\\src\\java\\"));
// MemoryMonitor.run = false;
System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000);
// System.out.println("1:\t"+Timer.getTime("general"));
// System.out.println("2:\t"+Timer.getTime("generalnull"));
// System.out.println("3:\t"+Timer.getTime("general1"));
// System.out.println("1:\t"+Timer.getTime(10));
// System.out.println("> 1:\t"+Timer.getTime(11));
// System.out.println("=:\t"+Timer.getTime(12));
} catch(Exception ex) {
ex.printStackTrace();
}
}
}

@ -1,40 +0,0 @@
package test;
import java.io.File;
import java.util.Date;
import java.util.HashMap;
import de.fernflower.main.decompiler.ConsoleDecompiler;
public class JetTest {
public static void main(String[] args) {
try {
String current_path = new File(".").getCanonicalPath();
//TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll");
Date start = new Date();
ConsoleDecompiler decompiler = new ConsoleDecompiler(new HashMap<String, Object>(){{put("log", "warn");put("ren", "1");}});
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\BradTest.class"), true);
decompiler.addSpace(new File(current_path + "/bin/test/input/TestEclipse7.class"), true);
//decompiler.addSpace(new File(current_path + "/src/test/input/TestJavac7.class"), true);
//decompiler.addSpace(new File(current_path + "/src/test/input/TestJavac8.class"), true);
//decompiler.decompileContext(new File("D:\\Oleg\\workspace\\output\\"));
decompiler.decompileContext(new File(current_path + "/src/test/output/"));
System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000);
} catch(Exception ex) {
ex.printStackTrace();
}
}
}

@ -1,95 +0,0 @@
package test;
import java.io.File;
import java.util.Date;
import java.util.HashMap;
import de.fernflower.main.decompiler.ConsoleDecompiler;
import de.fernflower.main.extern.IFernflowerPreferences;
public class JunitTest {
/**
* @param args
*/
public static void main(String[] args) {
try {
String current_path = new File(".").getCanonicalPath();
//TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll");
Date start = new Date();
ConsoleDecompiler decompiler = new ConsoleDecompiler(new HashMap<String, Object>(){{
put("log", "warn");
put("ren", "1");
put(IFernflowerPreferences.HIDE_DEFAULT_CONSTRUCTOR, "0");
//put(IFernflowerPreferences.DECOMPILE_GENERIC_SIGNATURES, "1");
put(IFernflowerPreferences.DECOMPILE_GENERIC_SIGNATURES, "0");
put(IFernflowerPreferences.IDEA_NOT_NULL_ANNOTATION, "1");
}});
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\idea-junit.jar"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\svn4idea.jar"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\github.jar"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\copyright.jar"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\rt_1_4_2.jar"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\swingset3_acceptance\\swingset3_original\\lib\\TimingFramework.jar"), true);
// decompiler.decompileContext(new File("D:\\Oleg\\workspace\\output1\\"));
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitStatusLine$1$1.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitStatusLine$1.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitStatusLine$2.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitStatusLine$StateInfo.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitStatusLine$TestProgressListener.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitStatusLine.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitConfiguration$1.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitConfiguration$2.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitConfiguration$Data.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitConfiguration.class"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\TestPackage$ResetConfigurationModuleAdapter.class"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\TestPackage$SearchForTestsTask.class"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\TestPackage.class"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\TestAnnotations$TestInner.class"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\TestAnnotationsEclipse$TestInner.class"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\LoadRecentBranchRevisions.class"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\LoadRecentBranchRevisions$1.class"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\Fernflower\\bin\\test\\input\\TestLoop.class"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\GithubSelectForkPanel$1.class"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\GithubSelectForkPanel.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$1.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$Caches.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$DebugTraceInfoStack.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$PutField.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$PutFieldImpl.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$HandleTable.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$ReplaceTable.class"), true);
// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$BlockDataOutputStream.class"), true);
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream.class"), true); // writeArray SSAU endless loop
//decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\SvnFormatSelector.class"), true);
decompiler.addSpace(new File("D:\\Oleg\\workspace\\Fernflower\\src\\test\\input\\TestJavac8.class"), true);
decompiler.decompileContext(new File("D:\\Oleg\\workspace\\output1\\"));
System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000);
} catch(Exception ex) {
ex.printStackTrace();
}
}
}

@ -1,81 +0,0 @@
package test;
import java.io.File;
import java.io.IOException;
import java.util.Enumeration;
import java.util.jar.JarFile;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
public class SumUpClasses {
public static void main(String[] args) {
try {
File dir = new File("C:\\revjava\\remote\\data\\input\\");
long[] res = getClasses(dir);
System.out.println("Count: "+res[0]);
System.out.println("Size: "+res[1]/1024/1024);
} catch(Exception ex) {
ex.printStackTrace();
}
}
private static long[] getClasses(File file) {
if(file.isDirectory()) {
long count = 0, size = 0;
for(File f : file.listFiles()) {
long[] arr = getClasses(f);
count+=arr[0];
size+=arr[1];
}
return new long[] {count, size};
} else {
String filename = file.getName();
if(filename.endsWith(".class")) {
return new long[] {1, file.length()};
} else if(filename.endsWith(".zip")) {
try {
return getClassesZip(new ZipFile(file));
} catch(IOException ex) {
System.out.println("Cannot read file: " + file.getAbsolutePath());
}
} else if(filename.endsWith(".jar")) {
try {
return getClassesZip(new JarFile(file));
} catch(IOException ex) {
System.out.println("Cannot read file: " + file.getAbsolutePath());
}
}
}
return new long[] {0, 0};
}
private static long[] getClassesZip(ZipFile archive) {
long count = 0, size = 0;
Enumeration<? extends ZipEntry> en = archive.entries();
while(en.hasMoreElements()) {
ZipEntry entr = (ZipEntry)en.nextElement();
if(!entr.isDirectory() && entr.getName().endsWith(".class")) {
count++;
size+=entr.getSize();
}
}
return new long[] {count, size};
}
}

@ -1,54 +0,0 @@
package test;
import java.io.File;
import java.util.Date;
import com.vladium.utils.timing.TimerFactory;
import de.fernflower.main.decompiler.ConsoleDecompiler;
public class TestInput {
public static void main(String[] args) {
try {
TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll");
} catch(Exception ex) {
ex.printStackTrace();
}
File[] dirs = new File("C:\\revjava\\remote\\data\\input\\").listFiles();
for(File dir : dirs) {
if(dir.isDirectory()) {
Date start = new Date();
System.out.println("==========================================================================");
System.out.println("Processing " + dir.getAbsolutePath());
decompileDirectory(dir);
System.out.println("Proceeded " + dir.getAbsolutePath());
System.out.println("Time elapsed " + (new Date().getTime() - start.getTime())/1000);
System.out.println("==========================================================================");
}
}
}
private static void decompileDirectory(File dir) {
try {
ConsoleDecompiler decompiler = new ConsoleDecompiler();
decompiler.addSpace(dir, true);
decompiler.decompileContext(new File("C:\\Temp\\fernflower\\dec\\output\\", dir.getName()));
} catch(Exception ex) {
ex.printStackTrace();
}
}
}

@ -1,38 +0,0 @@
package test;
import java.io.File;
import java.util.Date;
import java.util.HashMap;
import com.vladium.utils.timing.TimerFactory;
import de.fernflower.main.decompiler.ConsoleDecompiler;
public class TestRapc {
public static void main(String[] args) {
try {
TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll");
Date start = new Date();
ConsoleDecompiler decompiler = new ConsoleDecompiler(new HashMap<String, Object>(){{put("log", "warn");put("ren", "1");}});
decompiler.addSpace(new File("C:\\Temp\\fernflower\\rapc\\"), true);
decompiler.decompileContext(new File("C:\\Temp\\fernflower\\rapc_ff\\"));
System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000);
} catch(Exception ex) {
ex.printStackTrace();
}
}
}

@ -1,38 +0,0 @@
package test;
import java.io.File;
import java.util.Date;
import java.util.HashMap;
import com.vladium.utils.timing.TimerFactory;
import de.fernflower.main.decompiler.ConsoleDecompiler;
public class TestRuntime1_4_2_03 {
public static void main(String[] args) {
try {
TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll");
Date start = new Date();
ConsoleDecompiler decompiler = new ConsoleDecompiler(new HashMap<String, Object>(){{put("log", "warn");}});
decompiler.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\"), true);
decompiler.decompileContext(new File("D:\\Nonbku\\workspace_3.4\\JavaRuntime1_4_2_03\\src\\"));
System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000);
} catch(Exception ex) {
ex.printStackTrace();
}
}
}

@ -1,36 +0,0 @@
package test;
import java.io.File;
import java.util.Date;
import com.vladium.utils.timing.TimerFactory;
import de.fernflower.main.decompiler.ConsoleDecompiler;
public class TestSelf {
public static void main(String[] args) {
try {
TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll");
Date start = new Date();
ConsoleDecompiler decompiler = new ConsoleDecompiler();
decompiler.addSpace(new File("D:\\Nonbku\\workspace_3.4\\Fernflower\\bin\\"), true);
decompiler.decompileContext(new File("D:\\Nonbku\\workspace_3.4\\Fernflower_dec\\src\\"));
System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000);
} catch(Exception ex) {
ex.printStackTrace();
}
}
}

@ -1,69 +0,0 @@
package test;
import java.io.File;
import java.io.IOException;
import javax.xml.transform.Source;
import javax.xml.transform.stream.StreamSource;
import javax.xml.validation.Schema;
import javax.xml.validation.SchemaFactory;
import javax.xml.validation.Validator;
import org.xml.sax.ErrorHandler;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
public class TestValidateXml {
public static void main(String[] args) {
try {
// 1. Lookup a factory for the W3C XML Schema language
SchemaFactory factory = SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema");
// 2. Compile the schema.
// Here the schema is loaded from a java.io.File, but you could use
// a java.net.URL or a javax.xml.transform.Source instead.
Schema schema = factory.newSchema(new File("/opt/xml/docbook/xsd/docbook.xsd"));
// 3. Get a validator from the schema.
Validator validator = schema.newValidator();
validator.setErrorHandler(new ForgivingErrorHandler());
// 4. Parse the document you want to check.
Source source = new StreamSource(args[0]);
// 5. Check the document
try {
validator.validate(source);
System.out.println(args[0] + " is valid.");
} catch (SAXException ex) {
System.out.println(args[0] + " is not valid because ");
System.out.println(ex.getMessage());
}
} catch(IOException ex) {
System.out.println(args[0] + " is not valid because ");
System.out.println(ex.getMessage());
} catch(SAXException ex) {
System.out.println(args[0] + " is not valid because ");
System.out.println(ex.getMessage());
}
}
}
class ForgivingErrorHandler implements ErrorHandler {
public void warning(SAXParseException ex) {
System.err.println(ex.getMessage());
}
public void error(SAXParseException ex) {
System.err.println(ex.getMessage());
}
public void fatalError(SAXParseException ex) throws SAXException {
throw ex;
}
}

@ -1,38 +0,0 @@
package test;
import java.io.File;
import java.util.Date;
import java.util.HashMap;
import com.vladium.utils.timing.TimerFactory;
import de.fernflower.main.decompiler.ConsoleDecompiler;
public class TestYWorks {
public static void main(String[] args) {
try {
TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll");
Date start = new Date();
ConsoleDecompiler decompiler = new ConsoleDecompiler(new HashMap<String, Object>(){{put("log", "warn");put("ren", "1");}});
decompiler.addSpace(new File("C:\\Temp\\fernflower\\y\\"), true);
decompiler.decompileContext(new File("C:\\Temp\\fernflower\\y_ff\\"));
System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000);
} catch(Exception ex) {
ex.printStackTrace();
}
}
}

@ -1,67 +0,0 @@
package test;
import java.io.File;
import de.fernflower.main.decompiler.ConsoleDecompiler;
public class VladDebug {
public static void main(String[] args) {
try {
ConsoleDecompiler decompiler = new ConsoleDecompiler();
decompiler.addSpace(new File("C:\\Temp\\fernflower\\vladdebug\\"), true);
decompiler.decompileContext(new File("D:\\Nonbku\\workspace_3.4\\vladdebug\\src\\"));
// Fernflower fl = new Fernflower();
//
// DecompilerContext.getCurrentContext().setLogger(new PrintStreamLogger(IFernflowerLogger.WARNING, System.out));
//
// GlobalOptions.setProperty(GlobalOptions.DECOMPILE_INNER, "1");
// GlobalOptions.setProperty(GlobalOptions.DECOMPILE_CLASS_1_4, "1");
// GlobalOptions.setProperty(GlobalOptions.DECOMPILE_ASSERTIONS, "1");
// GlobalOptions.setProperty(GlobalOptions.REMOVE_BRIDGE, "1");
// GlobalOptions.setProperty(GlobalOptions.REMOVE_SYNTHETIC, "0");
// GlobalOptions.setProperty(GlobalOptions.HIDE_EMPTY_SUPER, "1");
// GlobalOptions.setProperty(GlobalOptions.HIDE_DEFAULT_CONSTRUCTOR, "1");
// GlobalOptions.setProperty(GlobalOptions.DECOMPILE_GENERIC_SIGNATURES, "0");
// GlobalOptions.setProperty(GlobalOptions.OUTPUT_COPYRIGHT_COMMENT, "0");
// GlobalOptions.setProperty(GlobalOptions.NO_EXCEPTIONS_RETURN, "1");
// GlobalOptions.setProperty(GlobalOptions.DECOMPILE_ENUM, "1");
// GlobalOptions.setProperty(GlobalOptions.FINALLY_DEINLINE, "1");
// GlobalOptions.setProperty(GlobalOptions.REMOVE_GETCLASS_NEW, "1");
//
// GlobalOptions.setProperty(GlobalOptions.BOOLEAN_TRUE_ONE, "1");
// GlobalOptions.setProperty(GlobalOptions.SYNTHETIC_NOT_SET, "1");
// GlobalOptions.setProperty(GlobalOptions.UNDEFINED_PARAM_TYPE_OBJECT, "1");
//
//
// if(args != null && args.length > 1) {
//
// for(int i=0;i<args.length-1;i++) {
// fl.getStructcontext().addSpace(new File(args[i]), true);
// }
//
// fl.decompileContext(new File(args[args.length-1]));
//
// return;
// }
//
// StructContext context = fl.getStructcontext();
//
// context.addSpace(new File("C:\\Temp\\fernflower\\vladdebug\\"), true);
//
// fl.decompileContext(context, new File("D:\\Nonbku\\workspace_3.4\\vladdebug\\src\\"));
} catch(Exception ex) {
ex.printStackTrace();
}
}
}

Binary file not shown.

Binary file not shown.

@ -1,55 +0,0 @@
package test.misc;
import java.io.File;
import java.util.Date;
import com.vladium.utils.timing.TimerFactory;
import de.fernflower.main.decompiler.ConsoleDecompiler;
public class ObfuscatedExceptionDetector {
public static void main(String[] args) {
try {
TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll");
} catch(Exception ex) {
ex.printStackTrace();
}
File[] dirs = new File("C:\\revjava\\remote\\data\\input\\").listFiles();
for(File dir : dirs) {
if(dir.isDirectory()) {
Date start = new Date();
System.out.println("==========================================================================");
System.out.println("Processing " + dir.getAbsolutePath());
decompileDirectory(dir);
System.out.println("Proceeded " + dir.getAbsolutePath());
System.out.println("Time elapsed " + (new Date().getTime() - start.getTime())/1000);
System.out.println("==========================================================================");
}
}
}
private static void decompileDirectory(File dir) {
try {
ConsoleDecompiler decompiler = new ConsoleDecompiler();
decompiler.addSpace(dir, true);
decompiler.decompileContext(new File("C:\\Temp\\fernflower\\dec\\output\\", dir.getName()));
} catch(Exception ex) {
ex.printStackTrace();
}
}
}

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save