substablexpr(3) substitutes a given atom by an expression.

SYNOPSYS

#include "abl101.h"
chain_list *substablexpr( Expr1, Name, Expr2 )
  chain_list *Expr1;
  char       *Name;
  chain_list *Expr2;

PARAMETERS

Expr1
First expression.
Name
Atom name.
Expr
Second expression.

DESCRIPTION

substablexpr substitutes Atom in Expr1 by Expr2. The expression pointer Expr1 MUSTN'T be used after the call to this function.

RETURN VALUE

substablexpr returns the modified expression.

EXAMPLE

#include "abl101.h"
  chain_list *Expr1;
  chain_list *Expr2;
  Expr1 = createablbinexpr( ABL_OR,
                            createablatom( "a" ),
                            createablatom( "b" ) );
  Expr2 = createablbinexpr( ABL_AND,
                            createablatom( "c" ),
                            createablatom( "d" ) );
  Expr1 = substablexpr( Expr1, "a", Expr2 );
  /* displays ((c and d) or b) */
  viewablexpr( Expr1, ABL_VIEW_VHDL );