private static void AddInterfaces(Type[] interfaces, Java.Util.ISet<Type> ret, Java.Util.IQueue<Type> toVisit) { foreach (var i in interfaces) { if (i == typeof(IGenericTypeDefinition)) continue; // hide this marker interface. if (!ret.Contains(i)) { ret.Add(i); toVisit.Add(i); } } }