@Test public void testGenerics() { GenericSignatureParser parser = new GenericSignatureParser( "(Lcom/sleepycat/persist/EntityJoin<TPK;TE;>.JoinForwardCursor<TV;>;)V"); assertEquals(1, parser.getNumParameters()); }
public int getNumParameters() { int count = 0; for (Iterator<String> i = parameterSignatureIterator(); i.hasNext();) { i.next(); ++count; } return count; }
GenericSignatureParser { public int getNumParameters() { int count = 0; for (Iterator<String> i = parameterSignatureIterator(); i.hasNext();) { i.next(); ++count; } return count; } }
GenericSignatureParser { public int getNumParameters() { int count = 0; for (Iterator<String> i = parameterSignatureIterator(); i.hasNext();) { i.next(); ++count; } return count; } GenericSignatureParser(String signature); }
GenericSignatureParser { public int getNumParameters() { int count = 0; for (Iterator<String> i = parameterSignatureIterator(); i.hasNext();) { i.next(); ++count; } return count; } GenericSignatureParser(String signature); Iterator<String> parameterSignatureIterator(); String getReturnTypeSignature(); int getNumParameters(); static int getNumParametersForInvocation(InvokeInstruction inv, ConstantPoolGen cpg); static @CheckForNull Iterator<String> getGenericSignatureIterator(Method target); static boolean compareSignatures(String plainSignature, String genericSignature); static void main(String[] args); }
GenericSignatureParser { public int getNumParameters() { int count = 0; for (Iterator<String> i = parameterSignatureIterator(); i.hasNext();) { i.next(); ++count; } return count; } GenericSignatureParser(String signature); Iterator<String> parameterSignatureIterator(); String getReturnTypeSignature(); int getNumParameters(); static int getNumParametersForInvocation(InvokeInstruction inv, ConstantPoolGen cpg); static @CheckForNull Iterator<String> getGenericSignatureIterator(Method target); static boolean compareSignatures(String plainSignature, String genericSignature); static void main(String[] args);  }