flatablexpr(3) merges the operators of an expression

SYNOPSYS

#include "abl101.h"
void flatablexpr( Expr )
  chain_list *Expr;

PARAMETERS

Expr
Expression to flat.

DESCRIPTION

flatablexpr merges all the common operators in Expr.

RETURN VALUE

flatablexpr returns nothing.

EXAMPLE

#include "abl101.h"
  chain_list *Expr1;
  chain_list *Expr2;
  Expr1 = createbinexpr( ABL_OR, 
                         createablatom( "a" ),
                         createablatom( "b" ) );
  Expr2 = createabloper( ABL_OR );
  addablhexpr( Expr2, createablatom( "c" ) );
  addablhexpr( Expr2, Expr1 );
  Expr1 = dupablexpr( Expr2 );
  flatablexpr( Expr1 );
  /* displays ((a or b) or c) (a or b or c) */
  viewablexpr( Expr2, ABL_VIEW_VHDL );
  viewablexpr( Expr1, ABL_VIEW_VHDL );