public static ResolvedJavaType classForName(String internal,MetaAccessProvider metaAccess,ClassLoader cl){
  JavaKind k=JavaKind.fromTypeString(internal);
  try {
    String n=MetaUtil.internalNameToJava(internal,true,true);
    return metaAccess.lookupJavaType(k.isPrimitive() ? k.toJavaClass() : Class.forName(n,true,cl));
  }
 catch (  ClassNotFoundException cnfe) {
    throw new IllegalArgumentException("could not instantiate class described by " + internal,cnfe);
  }
}

public static ResolvedJavaType classForName ( String internal , MetaAccessProvider metaAccess , ClassLoader cl ) { JavaKind k = JavaKind . fromTypeString ( internal ) ; try { String n = MetaUtil . internalNameToJava ( internal , true , true ) ; return metaAccess . lookupJavaType ( k . isPrimitive ( ) ? k . toJavaClass ( ) : Class . forName ( n , true , cl ) ) ; } catch ( ClassNotFoundException cnfe ) { throw new IllegalArgumentException ( "could not instantiate class described by " + internal , cnfe ) ; } }
turns an class name in internal format into a resolved java type .
