比方說,我有這樣的一個:我應該對任何方法結果執行Contract.Ensures嗎?
[Pure]
public static TimeSpan Seconds(this int i)
{
Contract.Ensures(Contract.Result<TimeSpan>() == TimeSpan.FromSeconds(i));
return TimeSpan.FromSeconds(i);
}
是那個我保證這種嚴格的方式在合同結果正確,或者它是不必要的?
而在這種情況下?
[Pure]
public static T IfTrue<T>(this bool b, T value)
{
Contract.Ensures(Contract.Result<T>().Equals(b ? value : default(T)));
return b ? value : default(T);
}
我的問題是:
- 我說得表明這種精確的合同ensurance什麼時候?
- 我是否有義務制定如此嚴格的合同保證,爲什麼?
- 是否可以,我的合同保證重複(在許多情況下在我的申請)
return
聲明?
你想完成什麼? – gdoron
我正在學習'代碼合同'。 – AgentFire
這看起來好像太過分了。避免。 –