public static IEnumerable <ParameterType> ToParameters(this IEnumerable <System.Reflection.ParameterInfo> collection)
 {
     foreach (var item in collection)
     {
         yield return(ParameterType.From(item));
     }
 }
Ejemplo n.º 2
0
        public static bool CompareParameterTypes(this IEnumerable <ParameterType> source,
                                                 IEnumerable <ParameterType> parameters,
                                                 bool acceptParamObjectTypes = false,
                                                 bool substituteByRefs       = false)
        {
            if (source.Count() == parameters.Count())
            {
                for (var x = 0; x < source.Count(); x++)
                {
                    var src = source.ElementAt(x);
                    var ext = parameters.ElementAt(x);

                    if (substituteByRefs)
                    {
                        var referenceType = src.Type as ByReferenceType;
                        if (referenceType != null)
                        {
                            src = ParameterType.From(referenceType.ElementType);
                        }
                    }

                    if (src.Name != ext.Name)
                    {
                        if (!(acceptParamObjectTypes && src.Name == "Object"))
                        {
                            return(false);
                        }
                    }
                }

                return(true);
            }
            return(false);
        }
 public static IEnumerable <ParameterType> ToParameters(this IEnumerable <ParameterDefinition> collection)
 {
     foreach (var item in collection)
     {
         yield return(ParameterType.From(item));
     }
 }