feat: display all alternative Types
This commit is contained in:
parent
32a7a6e015
commit
43ca14194b
@ -8,6 +8,7 @@ import java.io.IOException;
|
||||
import java.io.OutputStream;
|
||||
import java.io.PrintStream;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.atomic.AtomicReference;
|
||||
|
||||
|
||||
/**
|
||||
@ -74,7 +75,14 @@ public class TypeFinder {
|
||||
for (var method : transferObj.getAst().getAllMethods()) {
|
||||
if (method.name.equals(methodName)) {
|
||||
if (method.getReturnType().toString().contains("TPH ")) {
|
||||
return typeHashMap.get(method.getReturnType().toString()).getFirst();
|
||||
StringBuilder possibleTypes = new StringBuilder();
|
||||
|
||||
for(var type : typeHashMap.get(method.getReturnType().toString())){
|
||||
possibleTypes.append(" | ").append(type);
|
||||
}
|
||||
|
||||
|
||||
return possibleTypes.toString().substring(3);
|
||||
}else{
|
||||
return method.getReturnType().toString();
|
||||
}
|
||||
|
@ -28,9 +28,12 @@ public class CompilerInterfaceTest {
|
||||
@Test
|
||||
public void testTypeFinder() throws IOException, ClassNotFoundException {
|
||||
TypeFinder typeFinder = new TypeFinder();
|
||||
var inferedMethods = typeFinder.infereMethodType("import java.lang.Integer;" +
|
||||
var inferedMethods = typeFinder.infereMethodType("import java.lang.Integer; import java.lang.String;" +
|
||||
"public class test{"+
|
||||
"public main(test){"+
|
||||
"public main(test){" +
|
||||
"if(0>1){" +
|
||||
"return \"w\";" +
|
||||
"}"+
|
||||
"Integer i = 0;"+
|
||||
"return i;"+
|
||||
"}"+
|
||||
|
Loading…
Reference in New Issue
Block a user