On 11/15/17 10:14 AM, Jonathan M Davis wrote:

 So, it's pointless to put an in contract on an
interface's function unless you're trying to ensure that nothing in derived
contracts is any stricter than that contract, which in practice likely means
that it's pointless to put an in contract on an interface function.


Just tested this, and actually, if you put no contract on an interface function, it negates any contracts on the implementing functions. So there definitely is a use for the in contract on an interface -- if you plan on defining contracts on implementing types.

I'm curious why the absence of an in contract disables all other in contracts. I would have expected it to simply have no effect.

-Steve

Reply via email to