public IEnumerable <IConstructorWrapper> RetrieveFrom(IConstructorQueries constructors)
        {
            var methods = constructors.TryToObtainPublicStaticFactoryMethodWithoutRecursion();

            if (methods.Count() == 0)
            {
                return(_next.RetrieveFrom(constructors));
            }
            return(methods);
        }
        public IEnumerable <IConstructorWrapper> RetrieveFrom(IConstructorQueries constructors)
        {
            var foundConstructors = constructors.TryToObtainInternalConstructorsWithRecursiveArguments();

            if (foundConstructors.Any())
            {
                return(foundConstructors.ToArray());
            }
            else
            {
                return(_next.RetrieveFrom(constructors));
            }
        }
Пример #3
0
        public IEnumerable <IConstructorWrapper> RetrieveFrom(IConstructorQueries constructors)
        {
            var methods = constructors.TryToObtainPrivateAndProtectedConstructorsWithoutRecursiveArguments();

            if (methods.Any())
            {
                return(methods);
            }
            else
            {
                return(_next.RetrieveFrom(constructors));
            }
        }
Пример #4
0
        public IEnumerable <IConstructorWrapper> RetrieveFrom(IConstructorQueries constructors)
        {
            var publicConstructors = constructors.TryToObtainPublicConstructorsWithoutRecursiveArguments();

            if (publicConstructors.Any())
            {
                return(publicConstructors);
            }
            else
            {
                return(_next.RetrieveFrom(constructors));
            }
        }
    public IEnumerable <IConstructorWrapper> RetrieveFrom(IConstructorQueries constructors)
    {
        var constructor = constructors.GetNonPublicParameterlessConstructorInfo();

        if (constructor.HasValue)
        {
            return(new List <IConstructorWrapper> {
                constructor.Value()
            });
        }
        else
        {
            return(_next.RetrieveFrom(constructors));
        }
    }
Пример #6
0
 public IEnumerable <IConstructorWrapper> GetAllPublicConstructors()
 {
     return(_constructorRetrieval.RetrieveFrom(this));
 }