Example #1
0
 protected override TypeMetricsReport AnalyzeType(INamedTypeDefinition type, PdbReader pdb, IEnumerable <MethodMetricsReport> methods)
 {
     return(new TypeMetricsReport
     {
         Name = type.Name(),
         FullName = type.FullName(),
         SourceLocation = SourceCodeLocating.OfType(type, pdb),
         Namespaces = type.Namespaces(),
         CompilerGenerated = type.IsGeneratedCode(),
         NumberOfFields = NumberOfFields.Of(type),
         NumberOfNonStaticPublicFields = NumberOfFields.NotStaticAndPublic(type),
         NumberOfMethods = NumberOfMethods.Of(type),
         DirectDependencies = DirectDependencies.Of(type, methods)
     });
 }
Example #2
0
        private IEnumerable <CustomNodeDefinition> FindAllDependencies(HashSet <CustomNodeDefinition> dependencySet)
        {
            var query = DirectDependencies.Where(def => !dependencySet.Contains(def));

            foreach (var definition in query)
            {
                yield return(definition);

                dependencySet.Add(definition);
                foreach (var def in definition.FindAllDependencies(dependencySet))
                {
                    yield return(def);
                }
            }
        }