wrap by contract work

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@4815 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Tiger Feng 2003-05-21 21:29:11 +00:00
commit 24b8d3cb49
2 changed files with 22 additions and 3 deletions

View file

@ -1,6 +1,28 @@
Version 1.3.20 (In progress)
============================
05/21/2003: songyanf (Tiger)
Added -contracts option.
First try of the idea of "Wrap by Contract":
build up realiable cross-language module by wrapping with SWIG.
Implemented basic assertion
(preassertion & postassertion & invariant)
for simple C/C++ functions.
Current format of contracts are:
%contract class_name :: func_name (paras...) {
require:
boolean exprs;
exprs;
ensure:
boolean expr;
exprs;
invariant:
boolean expr;
exprs;
}
*** NEW FEATURE ***
05/19/2003: cheetah (William Fulton)
Build tweaks. There were a few preprocessor definitions which were
specified in the Makefile for passing on the commandline when compiling.

View file

@ -192,9 +192,6 @@ int SWIG_main(int argc, char *argv[], Language *l) {
DOH *libfiles = 0;
DOH *cpps = 0 ;
extern void Swig_contracts(Node *n);
extern void Swig_contract_mode_set(int flag);
extern int Swig_contract_mode_get();
extern void Swig_browser(Node *n, int);
extern void Swig_default_allocators(Node *n);
extern void Swig_process_types(Node *n);