Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / System.Runtime.InteropServices / _MethodInfo.cs
1 //
2 // System.Runtime.InteropServices._MethodInfo 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 ("FFCC1B5D-ECB8-38DD-9B01-3DC8ABC2AA5F")]
19         [TypeLibImportClass (typeof (MethodInfo))]
20         public interface _MethodInfo
21         {
22                 bool Equals (object obj);
23
24                 MethodInfo GetBaseDefinition();
25                 
26                 object[] GetCustomAttributes (bool inherit);
27                 
28                 object[] GetCustomAttributes (Type attributeType, bool inherit);
29                 
30                 int GetHashCode ();
31
32                 MethodImplAttributes GetMethodImplementationFlags ();
33                 
34                 ParameterInfo[] GetParameters ();
35
36                 void GetIDsOfNames ([In] ref Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId);
37
38                 void GetTypeInfo (uint iTInfo, uint lcid, IntPtr ppTInfo);
39
40                 void GetTypeInfoCount (out uint pcTInfo);
41
42                 void Invoke (uint dispIdMember, [In] ref Guid riid, uint lcid, short wFlags, IntPtr pDispParams,
43                         IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr);
44
45                 Type GetType ();
46
47                 object Invoke (object obj, object[] parameters);
48                 
49                 object Invoke (object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture);
50                 
51                 bool IsDefined(Type attributeType, bool inherit);
52                 
53                 string ToString ();
54
55                 MethodAttributes Attributes {get;}
56
57                 CallingConventions CallingConvention {get;}
58
59                 Type DeclaringType {get;}
60
61                 bool IsAbstract {get;}
62
63                 bool IsAssembly {get;}
64
65                 bool IsConstructor {get;}
66
67                 bool IsFamily {get;}
68
69                 bool IsFamilyAndAssembly {get;}
70
71                 bool IsFamilyOrAssembly {get;}
72
73                 bool IsFinal {get;}
74
75                 bool IsHideBySig {get;}
76
77                 bool IsPrivate {get;}
78
79                 bool IsPublic {get;}
80
81                 bool IsSpecialName {get;}
82
83                 bool IsStatic {get;}
84
85                 bool IsVirtual {get;}
86
87                 MemberTypes MemberType {get;}
88
89                 RuntimeMethodHandle MethodHandle {get;}
90
91                 string Name {get;}
92
93                 Type ReflectedType {get;}
94
95                 Type ReturnType {get;}
96
97                 ICustomAttributeProvider ReturnTypeCustomAttributes {get;}
98         }
99 }
100 #endif