logic: add lots of Java indexing fixes

* update JavaSymbolSolver to version 0.6.0
* moved to Javaparser 3.3.0
* fixed solving type parameter names in symbols solved in jar files
* implemented ignoring name contexts in javassist and jre based method signatures to break infinite recursion
This commit is contained in:
malte_langkabel
2017-08-04 13:40:56 +02:00
parent 6ecc2d630b
commit 0a1fdee998
21 changed files with 492 additions and 379 deletions
@@ -8,9 +8,13 @@ public class JavaDeclName
private String m_name = "";
private List<String> m_typeParameterNames = null;
public static JavaDeclName unsolved()
{
return new JavaDeclName("unsolved-symbol");
}
public static JavaDeclName fromDotSeparatedString(String s)
{
JavaDeclName declName = null;
int separatorIndex = s.lastIndexOf('.');
@@ -1,12 +1,13 @@
package com.sourcetrail.name;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
public class JavaFunctionDeclName extends JavaDeclName
{
private JavaTypeName m_returnTypeName = null;
private List<JavaTypeName> m_parameterNames = null;
private List<JavaTypeName> m_parameterNames = new ArrayList<>();
private boolean m_isStatic = false;
public JavaFunctionDeclName(String name, JavaTypeName returnTypeName, List<JavaTypeName> parameterNames, boolean isStatic)
@@ -14,7 +15,7 @@ public class JavaFunctionDeclName extends JavaDeclName
super(name);
m_returnTypeName = returnTypeName;
m_parameterNames = parameterNames;
if (m_parameterNames != null) m_parameterNames = parameterNames;
m_isStatic = isStatic;
}
@@ -8,6 +8,11 @@ public class JavaTypeName
private String m_name = "";
private List<JavaTypeName> m_typeArgumentNames = null;
public static JavaTypeName unsolved()
{
return new JavaTypeName("unsolved-type", null);
}
public static JavaTypeName fromDotSeparatedString(String s)
{
JavaTypeName typeName = null;