diff options
| author | 2016-09-11 17:51:37 +0200 | |
|---|---|---|
| committer | 2016-09-11 17:51:37 +0200 | |
| commit | eccda558cb3ecf07bd66f726022d9cd7d2c8e99d (patch) | |
| tree | d49720b9f3bb72d46861bb23546d14789f32f014 /src/main/java | |
| parent | Add a recursive scan for interfaces (diff) | |
| download | enigma-eccda558cb3ecf07bd66f726022d9cd7d2c8e99d.tar.gz enigma-eccda558cb3ecf07bd66f726022d9cd7d2c8e99d.tar.xz enigma-eccda558cb3ecf07bd66f726022d9cd7d2c8e99d.zip | |
Fix generic issue with return type signature
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/cuchaz/enigma/mapping/ProcyonEntryFactory.java | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/main/java/cuchaz/enigma/mapping/ProcyonEntryFactory.java b/src/main/java/cuchaz/enigma/mapping/ProcyonEntryFactory.java index 8cbca13d..941caf9d 100644 --- a/src/main/java/cuchaz/enigma/mapping/ProcyonEntryFactory.java +++ b/src/main/java/cuchaz/enigma/mapping/ProcyonEntryFactory.java | |||
| @@ -34,7 +34,16 @@ public class ProcyonEntryFactory { | |||
| 34 | builder.append(paramType.getErasedSignature()); | 34 | builder.append(paramType.getErasedSignature()); |
| 35 | } | 35 | } |
| 36 | builder.append(")"); | 36 | builder.append(")"); |
| 37 | builder.append(methodReference.getReturnType().getErasedSignature()); | 37 | |
| 38 | // TODO: Fix Procyon render | ||
| 39 | TypeReference returnType = methodReference.getReturnType(); | ||
| 40 | if (returnType.getErasedSignature().equals("Ljava/lang/Object;") && returnType.hasExtendsBound() && returnType.getExtendsBound() instanceof CompoundTypeReference) | ||
| 41 | { | ||
| 42 | List<TypeReference> interfaces = ((CompoundTypeReference) returnType.getExtendsBound()).getInterfaces(); | ||
| 43 | interfaces.forEach((inter) -> builder.append(inter.getErasedSignature())); | ||
| 44 | } | ||
| 45 | else | ||
| 46 | builder.append(returnType.getErasedSignature()); | ||
| 38 | return builder.toString(); | 47 | return builder.toString(); |
| 39 | } | 48 | } |
| 40 | 49 | ||