When I use ContractArgumentValidator attribute, CCDocGen generates invalid documentation: it using argument name from method which marked with ContractArgumentValidator, no from method which using contract.
Example:
public class Sample
{
// <requires exception="T:System.ArgumentNullException">argument != null</requires>
// <exception cref="T:System.ArgumentNullException">argument == null</exception>
public void Method(string str)
{
SampleHelper.NotNull(str, "str");
}
}
public static class SampleHelper
{
public static void NotNull<T>(T argument, string name)
where T : class
{
if (argument == null)
{
throw new ArgumentNullException(name);
}
}
}
In example, CCDocGen generated documentation with argument, not
obj.