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:
parent
24189daf29
commit
24b8d3cb49
2 changed files with 22 additions and 3 deletions
|
|
@ -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.
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue