Update of /cvsroot/nice/Nice/src/bossa/syntax
In directory sc8-pr-cvs1:/tmp/cvs-serv18292/F:/nice/src/bossa/syntax
Modified Files:
Contract.java
Log Message:
Generating better bytecode for pre/post-conditions i.e. no duplicate checks whether assertions are turned on or not.
Index: Contract.java
===================================================================
RCS file: /cvsroot/nice/Nice/src/bossa/syntax/Contract.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** Contract.java 25 Oct 2002 13:06:07 -0000 1.1
--- Contract.java 19 Mar 2003 00:45:16 -0000 1.2
***************
*** 27,46 ****
public void addRequire(Expression condition)
{
! pre.add(CallExp.create(symbol("assert", condition), condition));
}
public void addRequire(Expression condition, Expression name)
{
! pre.add(CallExp.create(symbol("assert", condition), condition, name));
}
public void addEnsure(Expression condition)
{
! post.add(CallExp.create(symbol("assert", condition), condition));
}
public void addEnsure(Expression condition, Expression name)
{
! post.add(CallExp.create(symbol("assert", condition), condition, name));
}
--- 27,46 ----
public void addRequire(Expression condition)
{
! pre.add(CallExp.create(symbol("contractAssert", condition), condition));
}
public void addRequire(Expression condition, Expression name)
{
! pre.add(CallExp.create(symbol("contractAssert", condition), condition, name));
}
public void addEnsure(Expression condition)
{
! post.add(CallExp.create(symbol("contractAssert", condition), condition));
}
public void addEnsure(Expression condition, Expression name)
{
! post.add(CallExp.create(symbol("contractAssert", condition), condition, name));
}
|