typedef struct carpet_expr
public : char * carpet_expr::debug

public : int carpet_expr::debugbit

public : char * carpet_expr::e

public : int carpet_expr::i

public : indexed * carpet_expr::indy

public : int carpet_expr::l

public : indexed * carpet_expr::ptrtoindy

public : int carpet_expr::v



int exx(carpet_expr *ce)
/*this will parse only simple boolean/algebraic expressions with : !,&,|,(,),<<,>>,*,/,%,+,-,=,...
the expressions need to be correctly sorted and ordered against operator precedence
ce.e {the expression} needs to be UPPERCASED and syntax checked and correct ...
like if you have "x | y & z" the correct way is : "x|(y&z)
it can parse variable from the indexed table and/or numbers in decimal format
*/