svn path=/trunk/mcs/; revision=104772
[mono.git] / mcs / class / corlib / System.Runtime.InteropServices / _FieldInfo.cs
1 //
2 // System.Runtime.InteropServices._FieldInfo interface
3 //
4 // Author:
5 //   Kazuki Oikawa  (kazuki@panicode.com)
6 //
7
8 #if NET_1_1
9
10 using System;
11 using System.Globalization;
12 using System.Reflection;
13
14 namespace System.Runtime.InteropServices
15 {
16         [CLSCompliant (false)]
17         [InterfaceType (ComInterfaceType.InterfaceIsIUnknown)]
18         [Guid ("8A7C1442-A9FB-366B-80D8-4939FFA6DBE0")]
19         [TypeLibImportClass (typeof (FieldInfo))]
20 #if NET_2_0
21         [ComVisible (true)]
22 #endif
23         public interface _FieldInfo
24         {
25                 bool Equals (object other);
26
27                 object[] GetCustomAttributes (bool inherit);
28
29                 object[] GetCustomAttributes (Type attributeType, bool inherit);
30
31                 int GetHashCode ();
32
33                 Type GetType ();
34
35                 void GetIDsOfNames ([In] ref Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId);
36
37                 void GetTypeInfo (uint iTInfo, uint lcid, IntPtr ppTInfo);
38
39                 void GetTypeInfoCount (out uint pcTInfo);
40
41                 void Invoke (uint dispIdMember, [In] ref Guid riid, uint lcid, short wFlags, IntPtr pDispParams,
42                         IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr);
43
44                 object GetValue (object obj);
45
46 #if !NET_2_0
47                 [CLSCompliant (false)]
48 #endif
49                 object GetValueDirect (TypedReference obj);
50
51                 bool IsDefined (Type attributeType, bool inherit);
52
53                 void SetValue (object obj, object value);
54
55                 void SetValue (object obj, object value, BindingFlags invokeAttr, Binder binder, CultureInfo culture);
56
57 #if !NET_2_0
58                 [CLSCompliant (false)]
59 #endif
60                 void SetValueDirect (TypedReference obj, object value);
61
62                 string ToString ();
63
64                 FieldAttributes Attributes {get;}
65
66                 Type DeclaringType {get;}
67
68                 RuntimeFieldHandle FieldHandle {get;}
69
70                 Type FieldType {get;}
71
72                 bool IsAssembly {get;}
73
74                 bool IsFamily {get;}
75
76                 bool IsFamilyAndAssembly {get;}
77
78                 bool IsFamilyOrAssembly {get;}
79
80                 bool IsInitOnly {get;}
81
82                 bool IsLiteral {get;}
83
84                 bool IsNotSerialized {get;}
85
86                 bool IsPinvokeImpl {get;}
87
88                 bool IsPrivate {get;}
89
90                 bool IsPublic {get;}
91
92                 bool IsSpecialName {get;}
93
94                 bool IsStatic {get;}
95
96                 MemberTypes MemberType {get;}
97
98                 string Name {get;}
99
100                 Type ReflectedType {get;}
101         }
102 }
103 #endif