createablxorbinexpr(3) creates an 'xor' or 'xnor' operator expression.

SYNOPSYS

#include "abl101.h"
chain_list *createablxorbinexpr( Oper, Expr1, Expr2 )
  long        Oper;
  chain_list *Expr1;
  chain_list *Expr2;

PARAMETERS

Oper
Operator ABL_XOR or ABL_NXOR.
Expr1
First expression.
Expr2
Second expression.

DESCRIPTION

createablxorbinexpr creates a binary 'xor' or 'xnor' operator expression with the 'and', 'or' form. createablbinexpr simplifies eventually the sub-expressions. The expression pointers Expr1 and Expr2 MUSTN'T be used after the call to this function.

RETURN VALUE

createablxorbinexpr returns a pointer to the new operator expression.

ERRORS

"ablcreate: bad operator xx !",
Operator must be ABL_XOR or ABL_NXOR.

EXAMPLE

#include "abl101.h"
   chain_list *ExprA;
   chain_list *ExprB;
   chain_list *ExprAxorB;
   ExprA = createablatom( "a" );
   ExprB = createablatom( "b" );
   ExprAxorB  = createablxorbinexpr( ABL_XOR, ExprA, ExprB );
   /* displays (a and (not b) or (b and (not a)) */
   viewablexpr( ExprAxorB, ABL_VIEW_VHDL );