Table of Contents

Origin

This software belongs to the ALLIANCE CAD system from the CAO-VLSI team at ASIM/LIP6/UPMC laboratory.
LIP6/ASIM
University P. et M. Curie 4, place Jussieu 75252 PARIS Cedex 05 FRANCE
Fax : {33/0} 1.44.27.62.86
E-mail support : alliance-support@asim.lip6.fr

Name

numberAtomExpr - returns the number of atoms in an expression

Synopsys

#include logmmm.h"
int numberAtomExpr(expr)
chain_list *expr;

Parameter

expr
expression

Description

numberAtomExpr() returns the number of atoms of expr.

Example

#include mutnnn.h
/* mbk utilities */ #include logmmm.h" chain_list *expr1,*expr2; expr1 = createExpr(OR); addQExpr(expr1,createAtom("a")); addQExpr(expr1,createAtom("b")); expr2 = createExpr(OR); addQExpr(expr2,createAtom("c")); addQExpr(expr2,createAtom("d")); addQExpr(expr1,expr2); printf("%d",numberAtomExpr(expr1)); /* it will display 4 */
freeExpr(expr1);
/* don't free expr2 ! */

Program

int numberAtomExpr(expr)
chain_list *expr;
{
if (ATOM(expr))
return(1)
else
{
int cpt = 0;
while (expr = CDR(expr))

cpt = cpt + numberAtomExpr(CAR(expr)); return(cpt);
}
}

See Also

log(1) , abl(1) , profExpr(3) , lengthExpr(3) , equalExpr(3) , equalVarExpr(3) , searchExpr(3) , searchOperExpr(3) .

Bug Report

This tool is under development at the ASIM/LIP6/UPMC laboratory, cao-vlsi research team.
We need your feedbak to improve documentation and tools. If you find bugs, please fill-in the form at http://asim.lip6.fr/alliance/support/bug-report/ Thanks for doing this.


Table of Contents

 



Alliance Web Site © 1997, 2002 ASIM/LIP6/UPMC, page maintained by Czo [Olivier Sirol] , last updated on 26 May 2000.