diff options
author | Stiver <stiver.mail@gmail.com> | 2014-10-01 07:00:11 +0200 |
---|---|---|
committer | Stiver <stiver.mail@gmail.com> | 2014-10-01 07:00:11 +0200 |
commit | f735cbc7eac13452c8833bd13a060970d7c97163 (patch) | |
tree | f8da31e68ced320bcdebc84afb542fb11262c7fb /src/org/jetbrains/java/decompiler/main/ClassesProcessor.java | |
parent | 91c64c5a9467d17665881010bc0d86d138b124f6 (diff) | |
download | fernflower-f735cbc7eac13452c8833bd13a060970d7c97163.tar fernflower-f735cbc7eac13452c8833bd13a060970d7c97163.tar.gz fernflower-f735cbc7eac13452c8833bd13a060970d7c97163.tar.lz fernflower-f735cbc7eac13452c8833bd13a060970d7c97163.tar.xz fernflower-f735cbc7eac13452c8833bd13a060970d7c97163.zip |
Started work on mapping bytecode instructions to source code lines
Diffstat (limited to 'src/org/jetbrains/java/decompiler/main/ClassesProcessor.java')
-rw-r--r-- | src/org/jetbrains/java/decompiler/main/ClassesProcessor.java | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/org/jetbrains/java/decompiler/main/ClassesProcessor.java b/src/org/jetbrains/java/decompiler/main/ClassesProcessor.java index 6faad08..61807b7 100644 --- a/src/org/jetbrains/java/decompiler/main/ClassesProcessor.java +++ b/src/org/jetbrains/java/decompiler/main/ClassesProcessor.java @@ -16,6 +16,7 @@ package org.jetbrains.java.decompiler.main; import org.jetbrains.java.decompiler.code.CodeConstants; +import org.jetbrains.java.decompiler.main.collectors.BytecodeSourceMapper; import org.jetbrains.java.decompiler.main.collectors.CounterContainer; import org.jetbrains.java.decompiler.main.collectors.ImportCollector; import org.jetbrains.java.decompiler.main.extern.IFernflowerLogger; @@ -243,6 +244,7 @@ public class ClassesProcessor { ImportCollector importCollector = new ImportCollector(root); DecompilerContext.setImportCollector(importCollector); DecompilerContext.setCounterContainer(new CounterContainer()); + DecompilerContext.setBytecodeSourceMapper(new BytecodeSourceMapper()); new LambdaProcessor().processClass(root); @@ -276,6 +278,11 @@ public class ClassesProcessor { } buffer.append(classBuffer); + + if(DecompilerContext.getOption(IFernflowerPreferences.BYTECODE_SOURCE_MAPPING)) { + buffer.append(lineSeparator); + DecompilerContext.getBytecodeSourceMapper().dumpMapping(classBuffer); + } } finally { destroyWrappers(root); |