예제 #1
0
        /// <summary>
        /// Returns an enumerator for looping over the assemblies to be loaded.
        /// </summary>
        /// <returns></returns>
        public IEnumerator <Assembly> GetEnumerator()
        {
            Predicate <string> exclude = assembliesToExclude != null
                ? name => assembliesToExclude.Any(skip => Configure.IsMatch(skip, name))
                : (Predicate <string>)null;

            Predicate <string> include = assembliesToInclude != null
                ? name => assembliesToInclude.Any(skip => Configure.IsMatch(skip, name))
                : (Predicate <string>)null;

            return(Configure.FindAssemblies(directory, true, include, exclude).GetEnumerator());
        }