contracts for external functions?
Trass3r
un at known.com
Mon Aug 23 13:42:16 PDT 2010
The Matlab C headers provide some kind of hand-crafted contracts by
defining extra functions with suffix "_d" that check all the arguments and
then detouring the calls to the original functions via the preprocessor
(#define foo foo_d)
Of course I could do it the same way, but wouldn't it be better to add
this case to D's contract programming similar to interface contracts?
extern(C) int foo(int i)
in { assert(i > 7); }
out (result) { assert(result & 1); }
More information about the Digitalmars-d
mailing list