How do I use in contract with interface?
    Steven Schveighoffer 
    schveiguy at yahoo.com
       
    Wed Nov 15 15:33:50 UTC 2017
    
    
  
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
    
    
More information about the Digitalmars-d-learn
mailing list