Пример #1
0
            protected sealed override IEnumerator <IDiagnosticContext> GetEnumeratorCore(IDiagnosticContextFactory factory)
            {
                if (assembly == null || Ignore(assembly))
                {
                    yield break;
                }
                yield return(factory.Create(assembly));

                var assemblyTypes = new AssemblyTypes(assembly, IncludeAllTypes(assembly));

                foreach (var type in assemblyTypes)
                {
                    if (type == null || Ignore(type))
                    {
                        continue;
                    }
                    yield return(factory.Create(type));

                    var typeMembers = new TypeMembers(type, IncludeAllMembers(type));
                    foreach (var member in typeMembers)
                    {
                        if (member == null || Ignore(member))
                        {
                            continue;
                        }
                        yield return(factory.Create(member));
                    }
                }
            }