Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/ikvm-fork.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjfrijters <jfrijters>2007-05-29 20:27:08 +0400
committerjfrijters <jfrijters>2007-05-29 20:27:08 +0400
commit43b7e4a70faffab039f6e8f3246dde6e9dba7106 (patch)
tree376c944c33bebfde892037dc3608b3ddda89df5d /openjdk/ikvm
parent71f1928fb961e524420bd1a84c1f5ae9ef257772 (diff)
Integrated OpenJDK's java.lang.reflect.* classes (except for Array).
Diffstat (limited to 'openjdk/ikvm')
-rw-r--r--openjdk/ikvm/internal/LibraryVMInterface.java56
1 files changed, 56 insertions, 0 deletions
diff --git a/openjdk/ikvm/internal/LibraryVMInterface.java b/openjdk/ikvm/internal/LibraryVMInterface.java
new file mode 100644
index 00000000..5f881e32
--- /dev/null
+++ b/openjdk/ikvm/internal/LibraryVMInterface.java
@@ -0,0 +1,56 @@
+/*
+ Copyright (C) 2004, 2005, 2006, 2007 Jeroen Frijters
+
+ This software is provided 'as-is', without any express or implied
+ warranty. In no event will the authors be held liable for any damages
+ arising from the use of this software.
+
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+
+ 1. The origin of this software must not be misrepresented; you must not
+ claim that you wrote the original software. If you use this software
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original software.
+ 3. This notice may not be removed or altered from any source distribution.
+
+ Jeroen Frijters
+ jeroen@frijters.net
+
+*/
+
+package ikvm.internal;
+
+public interface LibraryVMInterface
+{
+ Object newClass(Object wrapper, Object protectionDomain, Object classLoader);
+ Object getWrapperFromClass(Object clazz);
+
+ Object getWrapperFromClassLoader(Object classLoader);
+ void setWrapperForClassLoader(Object classLoader, Object wrapper);
+
+ Object box(Object val);
+ Object unbox(Object val);
+
+ Throwable mapException(Throwable t);
+
+ void jniWaitUntilLastThread();
+ void jniDetach();
+ void setThreadGroup(Object group);
+
+ Object newDirectByteBuffer(cli.System.IntPtr address, int capacity);
+ cli.System.IntPtr getDirectBufferAddress(Object buffer);
+ int getDirectBufferCapacity(Object buffer);
+
+ void setProperties(cli.System.Collections.Hashtable props);
+
+ boolean runFinalizersOnExit();
+
+ Object newAnnotation(Object classLoader, Object definition);
+ Object newAnnotationElementValue(Object classLoader, Object expectedClass, Object definition);
+
+ Object newAssemblyClassLoader(cli.System.Reflection.Assembly assembly);
+}