From 5ecc3a7676ce8e4e2da59d7fb8d826f0b3b832c7 Mon Sep 17 00:00:00 2001 From: Guilhem Lavaux Date: Tue, 16 Dec 2003 11:35:40 +0000 Subject: [PATCH] TypeSignature.java (getClassForEncoding): Splitted the method so we can specify an explicit boot loader. 2003-12-16 Guilhem Lavaux Helmer Kraemer * gnu/java/lang/reflect/TypeSignature.java (getClassForEncoding): Splitted the method so we can specify an explicit boot loader. Co-Authored-By: Helmer Kraemer From-SVN: r74687 --- libjava/ChangeLog | 6 +++++ .../gnu/java/lang/reflect/TypeSignature.java | 25 ++++++++++++++++++- 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/libjava/ChangeLog b/libjava/ChangeLog index cb66ec5628c..2210d5f3823 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,9 @@ +2003-12-16 Guilhem Lavaux + Helmer Kraemer + + * gnu/java/lang/reflect/TypeSignature.java (getClassForEncoding): + Splitted the method so we can specify an explicit boot loader. + 2003-12-15 Graydon Hoare * jni/gtk-peer/gdkfont.h: New file. diff --git a/libjava/gnu/java/lang/reflect/TypeSignature.java b/libjava/gnu/java/lang/reflect/TypeSignature.java index e9c8861c611..1cf55a698e9 100644 --- a/libjava/gnu/java/lang/reflect/TypeSignature.java +++ b/libjava/gnu/java/lang/reflect/TypeSignature.java @@ -1,5 +1,5 @@ /* TypeSignature.java -- Class used to compute type signatures - Copyright (C) 1998, 2000, 2002 Free Software Foundation, Inc. + Copyright (C) 1998, 2000, 2002, 2003 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -149,6 +149,29 @@ public class TypeSignature */ public static Class getClassForEncoding(String type_code, boolean descriptor) throws ClassNotFoundException + { + return getClassForEncoding(type_code, descriptor, null); + } + + /** + * This function is the inverse of getEncodingOfClass. This + * accepts both object and descriptor formats, but must know which style + * of string is being passed in (usually, descriptor should be true).In + * descriptor format, "I" is treated as int.class, in object format, it + * is treated as a class named I in the unnamed package. It also + * accepts a ClassLoader, which is used to load the class. + * + * @param type_code the class name to decode + * @param descriptor if the string is in descriptor format + * @param loader the class loader used to load the class + * @return the corresponding Class object + * @throws ClassNotFoundException if the class cannot be located + * @see #getEncodingOfClass(Class, boolean) + * @see #getClassForEncoding(String, boolean) + */ + public static Class getClassForEncoding(String type_code, boolean descriptor, + ClassLoader loader) + throws ClassNotFoundException { if (descriptor) { -- 2.30.2