public static List < String > getParameterSignatures ( String methodSignature ) { int start = methodSignature . indexOf ( ' ' ) + 1 ; int limit = methodSignature . lastIndexOf ( ' ' ) ; if ( ( limit - start ) == 0 ) { return Collections . emptyList ( ) ; } List < String > parmSignatures = new ArrayList <> ( ) ; int sigStart = start ; for ( int i = start ; i < limit ; i ++ ) { if ( ! methodSignature . startsWith ( Values . SIG_ARRAY_PREFIX , i ) ) { if ( methodSignature . startsWith ( Values . SIG_QUALIFIED_CLASS_PREFIX , i ) ) { int semiPos = methodSignature . indexOf ( Values . SIG_QUALIFIED_CLASS_SUFFIX_CHAR , i + 1 ) ; parmSignatures . add ( methodSignature . substring ( sigStart , semiPos + 1 ) ) ; i = semiPos ; } else if ( ! isWonkyEclipseSignature ( methodSignature , i ) ) { parmSignatures . add ( methodSignature . substring ( sigStart , i + 1 ) ) ; } sigStart = i + 1 ; } } return parmSignatures ; }
returns a List of parameter signatures