[Issue 19131] New: Contracts should work function prototypes
    d-bugmail at puremagic.com 
    d-bugmail at puremagic.com
       
    Wed Aug  1 15:23:56 UTC 2018
    
    
  
https://issues.dlang.org/show_bug.cgi?id=19131
          Issue ID: 19131
           Summary: Contracts should work function prototypes
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P1
         Component: dmd
          Assignee: nobody at puremagic.com
          Reporter: puremagic at zoadian.de
Contracts should work on function prototypes.
Consider a C function like this one from liquid-dsp
/* Create object using Kaiser-Bessel windowed sinc method               */  \
/*  _n      : filter length, _n > 0                                     */  \
/*  _fc     : filter normalized cut-off frequency, 0 < _fc < 0.5        */  \
/*  _As     : filter stop-band attenuation [dB], _As > 0                */  \
/*  _mu     : fractional sample offset, -0.5 < _mu < 0.5                */  \
void _create_kaiser(unsigned int _n,                          \
                                  float        _fc,                         \
                                  float        _As,                         \
                                  float        _mu);                        \
it would be great if we could add contracts directly to our D decleration:
_create_kaiser(uint n, float fc, float As, float mu) in(n > 0) in(0 < fc && fc
< 0.5) in(As > 0) in(-0.5 < mu && mu < 0.5);
--
    
    
More information about the Digitalmars-d-bugs
mailing list