/* src/native/vm/reflect.h - helper functions for java/lang/reflect
- Copyright (C) 2007 R. Grafl, A. Krall, C. Kruegel,
- C. Oates, R. Obermaisser, M. Platter, M. Probst, S. Ring,
- E. Steiner, C. Thalinger, D. Thuernbeck, P. Tomsich, C. Ullrich,
- J. Wenninger, Institut f. Computersprachen - TU Wien
+ Copyright (C) 2007, 2008
+ CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO
This file is part of CACAO.
*/
+#ifndef _REFLECT_H
+#define _REFLECT_H
+
#include "config.h"
#include <stdint.h>
#include "native/jni.h"
#include "native/native.h"
-/* keep this order of the native includes */
+/* Keep this order of the native includes. */
#include "native/include/java_lang_String.h"
#if defined(ENABLE_JAVASE)
-# if defined(WITH_CLASSPATH_SUN)
+# if defined(WITH_JAVA_RUNTIME_LIBRARY_OPENJDK)
# include "native/include/java_nio_ByteBuffer.h" /* required by j.l.CL */
# endif
# include "native/include/java_lang_ClassLoader.h"
java_lang_reflect_Constructor *reflect_constructor_new(methodinfo *m);
java_lang_reflect_Field *reflect_field_new(fieldinfo *f);
java_lang_reflect_Method *reflect_method_new(methodinfo *m);
+java_handle_t *reflect_constructor_newinstance(methodinfo *m, java_handle_objectarray_t *args, bool override);
+java_handle_t *reflect_method_invoke(methodinfo *m, java_handle_t *o, java_handle_objectarray_t *args, bool override);
-#if defined(WITH_CLASSPATH_GNU) && defined(ENABLE_ANNOTATIONS)
+#if defined(WITH_JAVA_RUNTIME_LIBRARY_GNU_CLASSPATH) && defined(ENABLE_ANNOTATIONS)
struct java_util_Map* reflect_get_declaredannotatios(
java_handle_bytearray_t *annotations,
java_lang_Class *declaringClass,
classinfo *referer);
#endif
+#endif /* _REFLECT_H */
+
+
/*
* These are local overrides for various environment variables in Emacs.
* Please do not remove this and leave it at the end of the file, where