static void checkMethodDesc(final String desc){
  if (desc == null || desc.length() == 0) {
    throw new IllegalArgumentException("Invalid method descriptor (must not be null or empty)");
  }
  if (desc.charAt(0) != '(' || desc.length() < 3) {
    throw new IllegalArgumentException("Invalid descriptor: " + desc);
  }
  int start=1;
  if (desc.charAt(start) != ')') {
    do {
      if (desc.charAt(start) == 'V') {
        throw new IllegalArgumentException("Invalid descriptor: " + desc);
      }
      start=checkDesc(desc,start,false);
    }
 while (start < desc.length() && desc.charAt(start) != ')');
  }
  start=checkDesc(desc,start + 1,true);
  if (start != desc.length()) {
    throw new IllegalArgumentException("Invalid descriptor: " + desc);
  }
}

static void checkMethodDesc ( final String desc ) { if ( desc == null || desc . length ( ) == 0 ) { throw new IllegalArgumentException ( "Invalid method descriptor (must not be null or empty)" ) ; } if ( desc . charAt ( 0 ) != '(' || desc . length ( ) < 3 ) { throw new IllegalArgumentException ( "Invalid descriptor: " + desc ) ; } int start = 1 ; if ( desc . charAt ( start ) != ')' ) { do { if ( desc . charAt ( start ) == 'V' ) { throw new IllegalArgumentException ( "Invalid descriptor: " + desc ) ; } start = checkDesc ( desc , start , false ) ; } while ( start < desc . length ( ) && desc . charAt ( start ) != ')' ) ; } start = checkDesc ( desc , start + 1 , true ) ; if ( start != desc . length ( ) ) { throw new IllegalArgumentException ( "Invalid descriptor: " + desc ) ; } }
checks that the given string is a valid method descriptor .
