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/MonoProperty.cs')
-rwxr-xr-xmcs/class/corlib/System.Reflection/MonoProperty.cs164
1 files changed, 0 insertions, 164 deletions
diff --git a/mcs/class/corlib/System.Reflection/MonoProperty.cs b/mcs/class/corlib/System.Reflection/MonoProperty.cs
deleted file mode 100755
index 20d0124fe25..00000000000
--- a/mcs/class/corlib/System.Reflection/MonoProperty.cs
+++ /dev/null
@@ -1,164 +0,0 @@
-//
-// System.Reflection/MonoProperty.cs
-// The class used to represent Properties from the mono runtime.
-//
-// Author:
-// Paolo Molaro (lupus@ximian.com)
-// Patrik Torstensson (patrik.torstensson@labs2.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 MonoPropertyInfo {
- public Type parent;
- public String name;
- public MethodInfo get_method;
- public MethodInfo set_method;
- public PropertyAttributes attrs;
-
- [MethodImplAttribute(MethodImplOptions.InternalCall)]
- internal static extern void get_property_info (MonoProperty prop, out MonoPropertyInfo info);
- }
-
- internal class MonoProperty : PropertyInfo {
- internal IntPtr klass;
- internal IntPtr prop;
-
- public override PropertyAttributes Attributes {
- get {
- MonoPropertyInfo info;
- MonoPropertyInfo.get_property_info (this, out info);
- return info.attrs;
- }
- }
- public override bool CanRead {
- get {
- MonoPropertyInfo info;
- MonoPropertyInfo.get_property_info (this, out info);
- return (info.get_method != null);
- }
- }
- public override bool CanWrite {
- get {
- MonoPropertyInfo info;
- MonoPropertyInfo.get_property_info (this, out info);
- return (info.set_method != null);
- }
- }
-
- [MonoTODO]
- public override Type PropertyType {
- get {
- MonoPropertyInfo info;
- MonoPropertyInfo.get_property_info (this, out info);
-
- if (info.get_method != null) {
- return info.get_method.ReturnType;
- } else {
- // FIXME: take the last param to set_method
- return null;
- }
- }
- }
- public override Type ReflectedType {
- get {
- MonoPropertyInfo info;
- MonoPropertyInfo.get_property_info (this, out info);
- return info.parent;
- }
- }
- public override Type DeclaringType {
- get {
- MonoPropertyInfo info;
- MonoPropertyInfo.get_property_info (this, out info);
- return info.parent;
- }
- }
- public override string Name {
- get {
- MonoPropertyInfo info;
- MonoPropertyInfo.get_property_info (this, out info);
- return info.name;
- }
- }
-
- [MonoTODO]
- public override MethodInfo[] GetAccessors( bool nonPublic) {
- // FIXME: check nonPublic
- MonoPropertyInfo info;
- int n = 0;
- MonoPropertyInfo.get_property_info (this, out info);
- if (info.set_method != null)
- n++;
- if (info.get_method != null)
- n++;
- MethodInfo[] res = new MethodInfo [n];
- n = 0;
- if (info.set_method != null)
- res [n++] = info.set_method;
- if (info.get_method != null)
- res [n++] = info.get_method;
- return res;
- }
-
- [MonoTODO]
- public override MethodInfo GetGetMethod( bool nonPublic) {
- // FIXME: check nonPublic
- MonoPropertyInfo info;
- MonoPropertyInfo.get_property_info (this, out info);
- return info.get_method;
- }
- public override ParameterInfo[] GetIndexParameters() {
- MonoPropertyInfo info;
- MonoPropertyInfo.get_property_info (this, out info);
- if (info.get_method != null)
- return info.get_method.GetParameters ();
- return new ParameterInfo [0];
- }
- public override MethodInfo GetSetMethod( bool nonPublic) {
- // FIXME: check nonPublic
- MonoPropertyInfo info;
- MonoPropertyInfo.get_property_info (this, out info);
- return info.set_method;
- }
- 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 object GetValue( object obj, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture) {
- object ret = null;
-
- if (index == null || index.Length == 0) {
- MethodInfo method = GetGetMethod(false);
-
- ret = method.Invoke(obj, invokeAttr, binder, null, culture);
- }
-
- // fixme: support indexed parameters..
-
- return ret;
- }
-
- public override void SetValue( object obj, object value, BindingFlags invokeAttr, Binder binder, object[] index, CultureInfo culture) {
- }
-
- public override string ToString () {
- return PropertyType.ToString () + " " + Name;
- }
- }
-}
-