private static void ValidateMemberInitArgs(Type type, ReadOnlyCollection<MemberBinding> bindings)
{
for (int i = 0, n = bindings.Count; i < n; i++)
{
MemberBinding b = bindings[i];
ContractUtils.RequiresNotNull(b, nameof(bindings));
if (!b.Member.DeclaringType.IsAssignableFrom(type))
{
throw Error.NotAMemberOfType(b.Member.Name, type, nameof(bindings), i);
}
}
}
}