- int closing = signature.lastIndexOf('>', signature.length());
- typeVarName = signature.substring(pos + 1, closing);
- pos = signature.length();
+ // If not comma then perhaps semicolon
+ int semicolon = signature.indexOf(';', pos);
+ if (semicolon == -1) {
+ int closing = signature.lastIndexOf('>', signature.length());
+ typeVarName = signature.substring(pos, closing);
+ pos = signature.length();
+ } else {
+ typeVarName = signature.substring(pos, semicolon);
+ pos = semicolon + 1;
+ }