mapabloperexpr.3alc - Man Page
applies a function to all operands.
Synopsis
#include "abl101.h" chain_list ∗mapabloperexpr( Function, Oper, Expr ) chain_list ∗ (∗Function)(); long Oper; chain_list ∗Expr;
Parameters
- Function
Function name to apply to all operands.
- Oper
Operator number.
- Expr
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
Info
October 1, 1997 ASIM/LIP6 ABL FUNCTIONS