void ProcessAssembly() { if (ModuleDefinition.Assembly.ContainsTimeAttribute() || ModuleDefinition.ContainsTimeAttribute()) { foreach (var type in types) { if (type.IsInterceptor()) { continue; } if (type.IsCompilerGenerated()) { continue; } foreach (var method in type.ConcreteMethods()) { ProcessMethod(method); } } return; } foreach (var type in types) { if (type.IsInterceptor()) { continue; } if (type.IsCompilerGenerated()) { continue; } if (type.ContainsTimeAttribute()) { foreach (var method in type.ConcreteMethods()) { ProcessMethod(method); } continue; } foreach (var method in type.ConcreteMethods().Where(x => x.ContainsTimeAttribute())) { ProcessMethod(method); } } }