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

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'mcs/class/corlib/System.Reflection/MonoMethod.cs')
-rwxr-xr-xmcs/class/corlib/System.Reflection/MonoMethod.cs205
1 files changed, 0 insertions, 205 deletions
diff --git a/mcs/class/corlib/System.Reflection/MonoMethod.cs b/mcs/class/corlib/System.Reflection/MonoMethod.cs
deleted file mode 100755
index 0c9e0975868..00000000000
--- a/mcs/class/corlib/System.Reflection/MonoMethod.cs
+++ /dev/null
@@ -1,205 +0,0 @@
-//
-// System.Reflection/MonoMethod.cs
-// The class used to represent methods from the mono runtime.
-//
-// Author:
-// Paolo Molaro (lupus@ximian.com)
-//
-// (C) 2001 Ximian, Inc. http://www.ximian.com
-//
-
-using System;
-using System.Globalization;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-namespace System.Reflection {
- internal struct MonoMethodInfo {
- internal Type parent;
- internal Type ret;
- internal MethodAttributes attrs;
- internal MethodImplAttributes iattrs;
-
- [MethodImplAttribute(MethodImplOptions.InternalCall)]
- internal static extern void get_method_info (RuntimeMethodHandle handle, out MonoMethodInfo info);
-
- [MethodImplAttribute(MethodImplOptions.InternalCall)]
- internal static extern ParameterInfo[] get_parameter_info (RuntimeMethodHandle handle);
- };
-
- /*
- * Note: most of this class needs to be duplicated for the contructor, since
- * the .NET reflection class hierarchy is so broken.
- */
- internal class MonoMethod : MethodInfo {
- internal RuntimeMethodHandle mhandle;
- string name;
-
- [MonoTODO]
- public override MethodInfo GetBaseDefinition() {
- return this; /* FIXME */
- }
- public override Type ReturnType {
- get {
- MonoMethodInfo info;
- MonoMethodInfo.get_method_info (mhandle, out info);
- return info.ret;
- }
- }
- public override ICustomAttributeProvider ReturnTypeCustomAttributes {
- get {return null;}
- }
-
- public override MethodImplAttributes GetMethodImplementationFlags() {
- MonoMethodInfo info;
- MonoMethodInfo.get_method_info (mhandle, out info);
- return info.iattrs;
- }
-
- public override ParameterInfo[] GetParameters() {
- return MonoMethodInfo.get_parameter_info (mhandle);
- }
-
- /*
- * InternalInvoke() receives the parameters corretcly converted by the binder
- * to match the types of the method signature.
- */
- [MethodImplAttribute(MethodImplOptions.InternalCall)]
- internal extern Object InternalInvoke (Object obj, Object[] parameters);
-
- [MonoTODO]
- public override Object Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) {
- // fixme: consider all other parameters
- return InternalInvoke (obj, parameters);
- }
-
- public override RuntimeMethodHandle MethodHandle {
- get {return mhandle;}
- }
- public override MethodAttributes Attributes {
- get {
- MonoMethodInfo info;
- MonoMethodInfo.get_method_info (mhandle, out info);
- return info.attrs;
- }
- }
-
- public override Type ReflectedType {
- get {
- MonoMethodInfo info;
- MonoMethodInfo.get_method_info (mhandle, out info);
- return info.parent;
- }
- }
- public override Type DeclaringType {
- get {
- MonoMethodInfo info;
- MonoMethodInfo.get_method_info (mhandle, out info);
- return info.parent;
- }
- }
- public override string Name {
- get {
- return name;
- }
- }
-
- public override bool IsDefined (Type attributeType, bool inherit) {
- return MonoCustomAttrs.IsDefined (this, attributeType, inherit);
- }
-
- public override object[] GetCustomAttributes( bool inherit) {
- return MonoCustomAttrs.GetCustomAttributes (this, inherit);
- }
- public override object[] GetCustomAttributes( Type attributeType, bool inherit) {
- return MonoCustomAttrs.GetCustomAttributes (this, attributeType, inherit);
- }
-
- public override string ToString () {
- string parms = "";
- ParameterInfo[] p = GetParameters ();
- for (int i = 0; i < p.Length; ++i) {
- if (i > 0)
- parms = parms + ", ";
- parms = parms + p [i].ParameterType.Name;
- }
- return ReturnType.Name+" "+Name+"("+parms+")";
- }
- }
-
- internal class MonoCMethod : ConstructorInfo {
- internal RuntimeMethodHandle mhandle;
- string name;
-
- public override MethodImplAttributes GetMethodImplementationFlags() {
- MonoMethodInfo info;
- MonoMethodInfo.get_method_info (mhandle, out info);
- return info.iattrs;
- }
-
- public override ParameterInfo[] GetParameters() {
- return MonoMethodInfo.get_parameter_info (mhandle);
- }
-
- /*
- * InternalInvoke() receives the parameters corretcly converted by the binder
- * to match the types of the method signature.
- */
- [MethodImplAttribute(MethodImplOptions.InternalCall)]
- internal extern Object InternalInvoke (Object obj, Object[] parameters);
-
- public override Object Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) {
- throw new NotImplementedException ();
- }
-
- public override Object Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) {
- return InternalInvoke (null, parameters);
- }
-
- public override RuntimeMethodHandle MethodHandle {
- get {return mhandle;}
- }
- public override MethodAttributes Attributes {
- get {
- MonoMethodInfo info;
- MonoMethodInfo.get_method_info (mhandle, out info);
- return info.attrs;
- }
- }
-
- public override Type ReflectedType {
- get {
- MonoMethodInfo info;
- MonoMethodInfo.get_method_info (mhandle, out info);
- return info.parent;
- }
- }
- public override Type DeclaringType {
- get {
- MonoMethodInfo info;
- MonoMethodInfo.get_method_info (mhandle, out info);
- return info.parent;
- }
- }
- public override string Name {
- get {
- return name;
- }
- }
-
- [MonoTODO]
- public override bool IsDefined (Type attribute_type, bool inherit) {
- return false;
- }
-
- [MonoTODO]
- public override object[] GetCustomAttributes (bool inherit) {
- return null;
- }
-
- [MonoTODO]
- public override object[] GetCustomAttributes (Type attributeType, bool inherit) {
- return null;
- }
- }
-}