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-09-24 15:57:00 +0400
committerjfrijters <jfrijters>2007-09-24 15:57:00 +0400
commitd20ce68f756e387295d975734952239f5fb60557 (patch)
treed2645e436382d9a44471626e1fb21f7cab024f00 /openjdk/ikvm
parent69aada932067bf4b1ba21fe360fe7475aa96df36 (diff)
Implemented optimized reflection/serialization when running on .NET 2.0 (by generating DynamicMethods instead of using .NET reflection).
Diffstat (limited to 'openjdk/ikvm')
-rw-r--r--openjdk/ikvm/internal/FieldReflectorBase.java35
1 files changed, 35 insertions, 0 deletions
diff --git a/openjdk/ikvm/internal/FieldReflectorBase.java b/openjdk/ikvm/internal/FieldReflectorBase.java
new file mode 100644
index 00000000..f98931f0
--- /dev/null
+++ b/openjdk/ikvm/internal/FieldReflectorBase.java
@@ -0,0 +1,35 @@
+/*
+ Copyright (C) 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;
+
+import java.io.ObjectStreamField;
+
+public abstract class FieldReflectorBase
+{
+ public abstract ObjectStreamField[] getFields();
+ public abstract void getPrimFieldValues(Object obj, byte[] buf);
+ public abstract void setPrimFieldValues(Object obj, byte[] buf);
+ public abstract void getObjFieldValues(Object obj, Object[] vals);
+ public abstract void setObjFieldValues(Object obj, Object[] vals);
+}