polarablexpr.3alc - Man Page

moves inverters to the atomic level.

Synopsis

#include "abl101.h"
chain_list ∗polarablexpr( Expr, Polar )
  chain_list ∗Expr;
  int         Polar;

Parameters

Expr

Expression to modify.

Polar

Expression polarity.

Description

polarablexpr modifies Expr by moving down the inverters to the atomic level. polarablexpr applies the Morgan's laws. If Polar is equal to ABL_POLAR_NEGATIVE  the function returns the modified expression after having complemented it. The expression pointer Expr MUSTN'T be used after the call to this function.

Return Value

polarablexpr returns the modified expression.

Example

#include "abl101.h"
  chain_list ∗Expr1;
  chain_list ∗Expr2;
  Expr1 = createabloper( ABL_NOT );
  Expr2 = createabloper( ABL_NOT );
  addablhexpr( Expr1, createablatom( "a" ) );
  addablhexpr( Expr2, Expr1 );
  Expr1 = polarablexpr( Expr2, ABL_POLAR_POSITIVE );
  /* displays  a */
  viewablexpr( Expr1, ABL_VIEW_VHDL );

See Also

abl(1)

Info

October 1, 1997 ASIM/LIP6 ABL FUNCTIONS