private static void CollectImplementedInterfaces(TypeReference type, HashSet <TypeReference> results)
{
var typeResolver = TypeResolver.For(type);
var typeDef = type.Resolve();
foreach (var implementedInterface in typeDef.Interfaces)
{
var interfaceType = typeResolver.Resolve(implementedInterface.InterfaceType);
results.Add(interfaceType);
CollectImplementedInterfaces(interfaceType, results);
}
}