File tree Expand file tree Collapse file tree 1 file changed +6
-1
lines changed
scip-semanticdb/src/main/java/com/sourcegraph/scip_semanticdb Expand file tree Collapse file tree 1 file changed +6
-1
lines changed Original file line number Diff line number Diff line change @@ -23,6 +23,8 @@ public class SignatureFormatter {
2323
2424 private static final Type NOTHING_SYMBOL = typeRef ("scala/Nothing#" );
2525 private static final String FUNCTION_SYMBOL_PREFIX = "scala/Function" ;
26+ // Special case scala/Function object to not conflict with Function1 for example
27+ private static final String FUNCTION_OBJECT = "scala/Function." ;
2628 private static final String TUPLE_SYMBOL_PREFIX = "scala/Tuple" ;
2729 private static final String ARRAY_SYMBOL = "scala/Array#" ;
2830 private static final String ENUM_SYMBOL = "java/lang/Enum#" ;
@@ -557,7 +559,10 @@ private String formatType(Type type) {
557559 b .append (formatType (typeRef .getTypeArguments (0 )));
558560 b .append ("[]" );
559561 }
560- } else if (isScala && typeRef .getSymbol ().startsWith (FUNCTION_SYMBOL_PREFIX )) {
562+ } else if (isScala
563+ && typeRef .getSymbol ().startsWith (FUNCTION_SYMBOL_PREFIX )
564+ && typeRef .getTypeArgumentsCount () > 0
565+ && !typeRef .getSymbol ().startsWith (FUNCTION_OBJECT )) {
561566 int n = typeRef .getTypeArgumentsCount () - 1 ;
562567 if (n == 0 ) {
563568 // Special-case for Function1[A, B]: don't wrap `A` in parenthesis like this `(A) => B`
You can’t perform that action at this time.
0 commit comments