join
donate

Design By Contract and NTP

I've started to add 'design by contract' assertions into certain areas of the codebase.

The primary reason for this is to make the code even more stable.

The precipitating cause for this is that the codebase is now being regularly scanned by Coverity and Calysto, and these tools are finding errors.

Here's an example of how these assertions can be used:

...
#include "ntp_assert.h"
...

int foo(char *a) {
    int result;
    int value;

    REQUIRE(a != NULL);
    ...
    bar(&value);
    INSIST(value > 2);
    ...

    ENSURE(result != 12);
    return result;
}


This topic: Dev > WebHome > DevelopmentIssues > DesignByContractAndNTP
Topic revision: r4 - 2012-09-24 - 05:13:55 - HarlanStenn
 
SSL security by CAcert
Get the CAcert Root Certificate
This site is powered by the TWiki collaboration platform
IPv6 Ready
Copyright & 1999-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors. Ideas, requests, problems regarding the site? Send feedback