public static String getClassLoadingTypeDescription(ClassNode c) {
        String desc = TypeUtil.getDescriptionByType(c);

        if (!c.isArray()) {
            if (desc.startsWith("L") && desc.endsWith(";")) {
                desc = desc.substring(1, desc.length() - 1); // remove "L" and ";"
            }
        }

        return desc.replace('/', '.');
    }
public static String getClassLoadingTypeDescription ( ClassNode c ) { String desc = TypeUtil . getDescriptionByType ( c ) ; if ( ! c . isArray ( ) ) { if ( desc . startsWith ( "L" ) && desc . endsWith ( ";" ) ) { desc = desc . substring ( 1 , desc . length ( ) - 1 ) ; } } return desc . replace ( '/' , '.' ) ; }
array types are special:
eg.: String[]: classname: [Ljava.lang.String;
Object:   classname: java.lang.Object
int[] :   classname: [I
unlike getTypeDescription '.' is not replaced by '/'.
it seems that makes problems for
the class loading if '.' is replaced by '/'

@return the ASM type description for class loading