Andreas Krall
Christian Thalinger
- $Id: utf8.c 2136 2005-03-30 10:03:03Z twisti $
+ $Id: utf8.c 2741 2005-06-20 09:57:14Z twisti $
*/
#include "vm/exceptions.h"
#include "vm/options.h"
#include "vm/statistics.h"
+#include "vm/stringlocal.h"
#include "vm/tables.h"
#include "vm/utf8.h"
utf *utf_java_lang_SecurityManager;
utf *utf_java_lang_String;
utf *utf_java_lang_System;
+utf *utf_java_lang_ThreadGroup;
utf *utf_java_io_Serializable;
utf *utf_java_lang_Throwable;
utf *utf_java_lang_VMThrowable;
-utf *utf_java_lang_Exception;
utf *utf_java_lang_Error;
+utf *utf_java_lang_Exception;
+utf *utf_java_lang_NoClassDefFoundError;
utf *utf_java_lang_OutOfMemoryError;
+utf *utf_java_lang_ClassNotFoundException;
utf* utf_java_lang_Void;
utf* utf_java_lang_Boolean;
utf* utf_java_lang_Float;
utf* utf_java_lang_Double;
+utf *utf_java_lang_StackTraceElement;
+utf *utf_java_lang_reflect_Constructor;
+utf *utf_java_lang_reflect_Field;
+utf *utf_java_lang_reflect_Method;
utf *utf_java_util_Vector;
utf *utf_InnerClasses; /* InnerClasses */
utf *utf_init; /* <init> */
utf *utf_clinit; /* <clinit> */
+utf *utf_clone; /* clone */
utf *utf_finalize; /* finalize */
+utf *utf_run; /* run */
-utf *utf_printStackTrace;
utf *utf_fillInStackTrace;
+utf *utf_getSystemClassLoader;
utf *utf_loadClass;
+utf *utf_printStackTrace;
utf *utf_void__void; /* ()V */
utf *utf_boolean__void; /* (Z)V */
utf *utf_long__void; /* (J)V */
utf *utf_float__void; /* (F)V */
utf *utf_double__void; /* (D)V */
+
+utf *utf_void__java_lang_ClassLoader; /* ()Ljava/lang/ClassLoader; */
+utf *utf_void__java_lang_Object; /* ()Ljava/lang/Object; */
utf *utf_void__java_lang_Throwable; /* ()Ljava/lang/Throwable; */
utf *utf_java_lang_String__void; /* (Ljava/lang/String;)V */
utf *utf_java_lang_String__java_lang_Class;
utf *utf_java_lang_Throwable__void; /* (Ljava/lang/Throwable;)V */
+utf *utf_not_named_yet; /* special name for unnamed classes */
+
utf *array_packagename;
utf_java_lang_SecurityManager = utf_new_char("java/lang/SecurityManager");
utf_java_lang_String = utf_new_char("java/lang/String");
utf_java_lang_System = utf_new_char("java/lang/System");
+ utf_java_lang_ThreadGroup = utf_new_char("java/lang/ThreadGroup");
utf_java_io_Serializable = utf_new_char("java/io/Serializable");
- utf_java_lang_Throwable = utf_new_char("java/lang/Throwable");
- utf_java_lang_VMThrowable = utf_new_char("java/lang/VMThrowable");
- utf_java_lang_Exception = utf_new_char("java/lang/Exception");
- utf_java_lang_Error = utf_new_char("java/lang/Error");
- utf_java_lang_OutOfMemoryError = utf_new_char("java/lang/OutOfMemoryError");
+ utf_java_lang_Throwable = utf_new_char(string_java_lang_Throwable);
+ utf_java_lang_VMThrowable = utf_new_char(string_java_lang_VMThrowable);
+ utf_java_lang_Error = utf_new_char(string_java_lang_Error);
+ utf_java_lang_Exception = utf_new_char(string_java_lang_Exception);
+
+ utf_java_lang_NoClassDefFoundError =
+ utf_new_char(string_java_lang_NoClassDefFoundError);
+
+ utf_java_lang_OutOfMemoryError =
+ utf_new_char(string_java_lang_OutOfMemoryError);
+
+ utf_java_lang_ClassNotFoundException =
+ utf_new_char(string_java_lang_ClassNotFoundException);
utf_java_lang_Void = utf_new_char("java/lang/Void");
utf_java_lang_Boolean = utf_new_char("java/lang/Boolean");
utf_java_lang_Float = utf_new_char("java/lang/Float");
utf_java_lang_Double = utf_new_char("java/lang/Double");
+ utf_java_lang_StackTraceElement =
+ utf_new_char("java/lang/StackTraceElement");
+
+ utf_java_lang_reflect_Constructor =
+ utf_new_char("java/lang/reflect/Constructor");
+
+ utf_java_lang_reflect_Field = utf_new_char("java/lang/reflect/Field");
+ utf_java_lang_reflect_Method = utf_new_char("java/lang/reflect/Method");
utf_java_util_Vector = utf_new_char("java/util/Vector");
utf_InnerClasses = utf_new_char("InnerClasses");
utf_init = utf_new_char("<init>");
utf_clinit = utf_new_char("<clinit>");
+ utf_clone = utf_new_char("clone");
utf_finalize = utf_new_char("finalize");
+ utf_run = utf_new_char("run");
utf_printStackTrace = utf_new_char("printStackTrace");
utf_fillInStackTrace = utf_new_char("fillInStackTrace");
utf_loadClass = utf_new_char("loadClass");
+ utf_getSystemClassLoader = utf_new_char("getSystemClassLoader");
utf_void__void = utf_new_char("()V");
utf_boolean__void = utf_new_char("(Z)V");
utf_long__void = utf_new_char("(J)V");
utf_float__void = utf_new_char("(F)V");
utf_double__void = utf_new_char("(D)V");
+ utf_void__java_lang_Object = utf_new_char("()Ljava/lang/Object;");
utf_void__java_lang_Throwable = utf_new_char("()Ljava/lang/Throwable;");
+
+ utf_void__java_lang_ClassLoader =
+ utf_new_char("()Ljava/lang/ClassLoader;");
+
utf_java_lang_String__void = utf_new_char("(Ljava/lang/String;)V");
utf_java_lang_String__java_lang_Class =
utf_java_lang_Throwable__void = utf_new_char("(Ljava/lang/Throwable;)V");
+ utf_not_named_yet = utf_new_char("\t<not_named_yet>");
+
array_packagename = utf_new_char("\t<the array package>");
}
return 0;
}
- endpos = utf_end(u);
+ endpos = UTF_END(u);
utf_ptr = u->text;
while (utf_ptr < endpos) {
return;
}
- endpos = utf_end(u);
+ endpos = UTF_END(u);
utf_ptr = u->text;
while (utf_ptr < endpos) {
return;
}
- endpos = utf_end(u);
+ endpos = UTF_END(u);
utf_ptr = u->text;
while (utf_ptr < endpos) {
return;
}
- endpos = utf_end(u);
+ endpos = UTF_END(u);
utf_ptr = u->text;
while (utf_ptr < endpos)
return;
}
- endpos = utf_end(u);
+ endpos = UTF_END(u);
utf_ptr = u->text;
while (utf_ptr < endpos) {
if (!u)
return;
- endpos = utf_end(u);
+ endpos = UTF_END(u);
utf_ptr = u->text;
while (utf_ptr < endpos) {
if (!u)
return;
- endpos = utf_end(u);
+ endpos = UTF_END(u);
utf_ptr = u->text;
while (utf_ptr < endpos) {
if (v < min_codepoint[len]) { /* overlong UTF-8 */
if (!opt_liberalutf)
fprintf(stderr,"WARNING: Overlong UTF-8 sequence found.\n");
- /* XXX change this to panic? */
+ /* XXX change this to exception? */
}
}
bool is_valid_name_utf(utf *u)
{
- return is_valid_name(u->text,utf_end(u));
+ return is_valid_name(u->text, UTF_END(u));
}