code: 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('/', '.');
      }
docs: 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