From 6d62cb9ac047f9ef1d783d319e6c0ba0df80ffc6 Mon Sep 17 00:00:00 2001 From: octarine-noise Date: Fri, 5 May 2017 10:58:48 +0200 Subject: [PATCH] dev-only debug code for ASM transformer incompatibilities --- .../mods/octarinecore/metaprog/Transformation.kt | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/main/kotlin/mods/octarinecore/metaprog/Transformation.kt b/src/main/kotlin/mods/octarinecore/metaprog/Transformation.kt index 3fdf620..e67fc81 100644 --- a/src/main/kotlin/mods/octarinecore/metaprog/Transformation.kt +++ b/src/main/kotlin/mods/octarinecore/metaprog/Transformation.kt @@ -8,6 +8,8 @@ import org.objectweb.asm.ClassReader import org.objectweb.asm.ClassWriter import org.objectweb.asm.Opcodes import org.objectweb.asm.tree.* +import java.io.File +import java.io.FileOutputStream @IFMLLoadingPlugin.TransformerExclusions( "mods.octarinecore.metaprog", @@ -55,6 +57,15 @@ open class Transformer : IClassTransformer { MCP -> log.info("Found method ${targetMethod.parentClass.name}.${targetMethod.name(MCP)} ${targetMethod.asmDescriptor(MCP)}") SRG -> log.info("Found method ${targetMethod.parentClass.name}.${targetMethod.name(namespace)} ${targetMethod.asmDescriptor(namespace)} (matching ${targetMethod.name(MCP)})") } + + // write input bytecode for debugging - definitely not in production... + //File("BF_debug").mkdir() + //FileOutputStream(File("BF_debug/$transformedName.class")).apply { + // write(classData) + // close() + //} + + // transform MethodTransformContext(method, namespace).transform() workDone = true }