+ class MethodInfoWrapper : MethodInfo
+ {
+ private readonly MethodInfo method;
+
+ public MethodInfoWrapper (MethodInfo method)
+ {
+ this.method = method;
+ }
+
+ public override object[] GetCustomAttributes (bool inherit)
+ {
+ return method.GetCustomAttributes (inherit);
+ }
+
+ public override bool IsDefined (Type attributeType, bool inherit)
+ {
+ return method.IsDefined (attributeType, inherit);
+ }
+
+ public override ParameterInfo[] GetParameters ()
+ {
+ return method.GetParameters ();
+ }
+
+ public override MethodImplAttributes GetMethodImplementationFlags ()
+ {
+ return method.GetMethodImplementationFlags ();
+ }
+
+ public override object Invoke (object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture)
+ {
+ return method.Invoke (obj, invokeAttr, binder, parameters, culture);
+ }
+
+ public override MethodInfo GetBaseDefinition ()
+ {
+ return method.GetBaseDefinition ();
+ }
+
+ public override ICustomAttributeProvider ReturnTypeCustomAttributes {
+ get { return method.ReturnTypeCustomAttributes; }
+ }
+
+ public override string Name {
+ get { return method.Name; }
+ }
+
+ public override Type ReturnType {
+ get { return method.ReturnType; }
+ }
+
+ public override Type DeclaringType {
+ get { return method.DeclaringType; }
+ }
+
+ public override Type ReflectedType {
+ get { return method.ReflectedType; }
+ }
+
+ public override RuntimeMethodHandle MethodHandle {
+ get { return method.MethodHandle; }
+ }
+
+ public override MethodAttributes Attributes {
+ get { return method.Attributes; }
+ }
+
+ public override object[] GetCustomAttributes (Type attributeType, bool inherit)
+ {
+ return method.GetCustomAttributes (attributeType, inherit);
+ }
+ }
+
+