Example #1
0
 public override IEnumerable <CustomParameterInfo> GetRequiredParameterLayout()
 {
     if (!InterceptedMethod.IsStatic)
     {
         yield return(InterceptedMethod.DeclaringType);
     }
     foreach (var el in InterceptedMethod.GetParameters())
     {
         if (el.ParameterType.IsByRef)
         {
             yield return(el);
         }
         else
         {
             yield return(el.ParameterType.MakeByRefType());
         }
     }
 }
Example #2
0
 public virtual IEnumerable <CustomParameterInfo> GetRequiredParameterLayout()
 {
     if (HasResultAsFirstParameter)
     {
         yield return((InterceptedMethod as MethodInfo).ReturnType);
     }
     if (!InterceptedMethod.IsStatic)
     {
         yield return(InterceptedMethod.DeclaringType);
     }
     foreach (var param in InterceptedMethod.GetParameters())
     {
         yield return(param);
     }
     if (RequiresLocalToCacheOutResult)
     {
         yield return(new CustomParameterInfo((InterceptedMethod as MethodInfo).ReturnType, true));
     }
 }