Scroll to navigation

MAPABLOPEREXPR(3) ABL FUNCTIONS MAPABLOPEREXPR(3)

NAME

mapabloperexpr - applies a function to all operands.

ORIGIN

This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at LIP6 laboratory of Université Pierre et Marie CURIE, in Paris, France.

Web : http://asim.lip6.fr/recherche/alliance/
E-mail : alliance-users@asim.lip6.fr

SYNOPSYS

#include "abl101.h"
chain_list ∗mapabloperexpr( Function, Oper, Expr )

chain_list ∗ (∗Function)();
long Oper;
chain_list ∗Expr;

PARAMETERS

Function name to apply to all operands.
Operator number.
Expression to scan.

DESCRIPTION

mapabloperexpr applies Function to all operands of Expr. mapabloperexpr creates a head of an operator expression having Oper as operator and adds the arguments calculated by applying Function to each arguments of Expr. Function must return an expression and must have a unique expression as argument.

RETURN VALUE

mapabloperexpr returns a new expression by applying Function to all the arguments of the operator expression Expr.

EXAMPLE

#include "abl101.h"

chain_list ∗MapFunction( MapExpr )
chain_list ∗MapExpr;
{
return( createablnotexpr( dupablexpr( MapExpr ) ) );
}
chain_list ∗Expr;
chain_list ∗Expr1;
Expr = createablbinexpr( ABL_NOR,
createablatom( "a" ),
createablatom( "b" ) );
Expr1 = mapabloperexpr( MapFunction, ABL_AND, Expr );
/* displays ((not a) and (not b)) */
viewablexpr( Expr1, ABL_VIEW_VHDL );

SEE ALSO

abl(1)

BUG REPORT

This tool is under development at the ASIM department of the LIP6 laboratory.
We need your feedback to improve documentation and tools.

October 1, 1997 ASIM/LIP6