code: public static String getParamSequence(String descriptor) {
  		if (descriptor.charAt(1) == ')') {
  			// no parameters!
  			return null;
  		}
  		StringBuilder seq = new StringBuilder();
  		int pos = 1;
  		char ch;
  		while ((ch = descriptor.charAt(pos)) != ')') {
  			switch (ch) {
  				case 'L':
  					seq.append("O"); // O for Object
  					pos = descriptor.indexOf(';', pos + 1);
  					break;
  				case '[':
  					seq.append("O"); // O for Object
  					while (descriptor.charAt(++pos) == '[') {
  					}
  					if (descriptor.charAt(pos) == 'L') {
  						pos = descriptor.indexOf(';', pos + 1);
  					}
  					break;
  				default:
  					seq.append(ch);
  			}
  			pos++;
  		}
  		return seq.toString();
  	}
docs: Return a simple sequence for the descriptor where type references are collapsed to 'O', so
  (IILjava/lang/String;Z) will return IIOZ.
  
  @param descriptor method descriptor, for example (IILjava/lang/String;Z)V
  @return sequence where all parameters are represented by a single character - or null if no parameters