public override DmdType[] ReadDeclaredInterfaces() { var list = ObjectPools.AllocListOfType(); foreach (var gpcType in GetGenericParameterConstraints()) { if (gpcType.IsInterface) { list.Add(gpcType); } list.AddRange(gpcType.GetInterfaces()); } return(ObjectPools.FreeAndToArray(ref list)); }