diff options
| author | 2016-08-30 21:42:10 +0200 | |
|---|---|---|
| committer | 2016-08-30 21:42:10 +0200 | |
| commit | da42934c0a9c2ba9d209afe847940c69d37191b8 (patch) | |
| tree | 269cb17c75c5bc265b1367cb91a742fcb9bd1765 /src/main/java/cuchaz/enigma/analysis | |
| parent | Fix #14 (diff) | |
| download | enigma-fork-da42934c0a9c2ba9d209afe847940c69d37191b8.tar.gz enigma-fork-da42934c0a9c2ba9d209afe847940c69d37191b8.tar.xz enigma-fork-da42934c0a9c2ba9d209afe847940c69d37191b8.zip | |
Fix generic method not being mapped as token in the editor (Close #16)
Diffstat (limited to 'src/main/java/cuchaz/enigma/analysis')
| -rw-r--r-- | src/main/java/cuchaz/enigma/analysis/SourceIndexBehaviorVisitor.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/main/java/cuchaz/enigma/analysis/SourceIndexBehaviorVisitor.java b/src/main/java/cuchaz/enigma/analysis/SourceIndexBehaviorVisitor.java index aee7cf1..2c84cd6 100644 --- a/src/main/java/cuchaz/enigma/analysis/SourceIndexBehaviorVisitor.java +++ b/src/main/java/cuchaz/enigma/analysis/SourceIndexBehaviorVisitor.java | |||
| @@ -96,9 +96,12 @@ public class SourceIndexBehaviorVisitor extends SourceIndexVisitor { | |||
| 96 | @Override | 96 | @Override |
| 97 | public Void visitParameterDeclaration(ParameterDeclaration node, SourceIndex index) { | 97 | public Void visitParameterDeclaration(ParameterDeclaration node, SourceIndex index) { |
| 98 | ParameterDefinition def = node.getUserData(Keys.PARAMETER_DEFINITION); | 98 | ParameterDefinition def = node.getUserData(Keys.PARAMETER_DEFINITION); |
| 99 | if (def.getMethod() instanceof MethodDefinition) { | 99 | if (def.getMethod() instanceof MemberReference) { |
| 100 | MethodDefinition methodDef = (MethodDefinition) def.getMethod(); | 100 | BehaviorEntry behaviorEntry; |
| 101 | BehaviorEntry behaviorEntry = ProcyonEntryFactory.getBehaviorEntry(methodDef); | 101 | if (def.getMethod() instanceof MethodDefinition) |
| 102 | behaviorEntry = ProcyonEntryFactory.getBehaviorEntry((MethodDefinition) def.getMethod()); | ||
| 103 | else | ||
| 104 | behaviorEntry = ProcyonEntryFactory.getMethodEntry((MemberReference) def.getMethod()); // Generic definition | ||
| 102 | ArgumentEntry argumentEntry = new ArgumentEntry(behaviorEntry, argumentPosition++, node.getName()); | 105 | ArgumentEntry argumentEntry = new ArgumentEntry(behaviorEntry, argumentPosition++, node.getName()); |
| 103 | index.addDeclaration(node.getNameToken(), argumentEntry); | 106 | index.addDeclaration(node.getNameToken(), argumentEntry); |
| 104 | } | 107 | } |