diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2009-03-10 08:01:00 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2009-03-10 08:01:00 -0700 |
commit | 32314347bae6ddcd841a268e797ec4da45726abb (patch) | |
tree | e2e5fd1711f04a06d0da2b8003bc02cb9a5dd446 /src/map/amap/amapParse.c | |
parent | c03f9b516bed2c06ec2bfc78617eba5fc9a11c32 (diff) | |
download | abc-32314347bae6ddcd841a268e797ec4da45726abb.tar.gz abc-32314347bae6ddcd841a268e797ec4da45726abb.tar.bz2 abc-32314347bae6ddcd841a268e797ec4da45726abb.zip |
Version abc90310
Diffstat (limited to 'src/map/amap/amapParse.c')
-rw-r--r-- | src/map/amap/amapParse.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/map/amap/amapParse.c b/src/map/amap/amapParse.c index 48dabca2..bfa8e6a5 100644 --- a/src/map/amap/amapParse.c +++ b/src/map/amap/amapParse.c @@ -35,6 +35,7 @@ #define AMAP_EQN_SYM_AND '*' // logic AND #define AMAP_EQN_SYM_XOR '^' // logic XOR #define AMAP_EQN_SYM_OR '+' // logic OR +#define AMAP_EQN_SYM_OR2 '|' // logic OR // the list of opcodes (also specifying operation precedence) #define AMAP_EQN_OPER_NEG 10 // negation @@ -180,6 +181,7 @@ Hop_Obj_t * Amap_ParseFormula( FILE * pOutput, char * pFormInit, Vec_Ptr_t * vVa break; case AMAP_EQN_SYM_AND: case AMAP_EQN_SYM_OR: + case AMAP_EQN_SYM_OR2: case AMAP_EQN_SYM_XOR: if ( Flag != AMAP_EQN_FLAG_VAR ) { @@ -189,7 +191,7 @@ Hop_Obj_t * Amap_ParseFormula( FILE * pOutput, char * pFormInit, Vec_Ptr_t * vVa } if ( *pTemp == AMAP_EQN_SYM_AND ) Vec_IntPush( pStackOp, AMAP_EQN_OPER_AND ); - else if ( *pTemp == AMAP_EQN_SYM_OR ) + else if ( *pTemp == AMAP_EQN_SYM_OR || *pTemp == AMAP_EQN_SYM_OR2 ) Vec_IntPush( pStackOp, AMAP_EQN_OPER_OR ); else //if ( *pTemp == AMAP_EQN_SYM_XOR ) Vec_IntPush( pStackOp, AMAP_EQN_OPER_XOR ); @@ -246,9 +248,9 @@ Hop_Obj_t * Amap_ParseFormula( FILE * pOutput, char * pFormInit, Vec_Ptr_t * vVa // scan the next name for ( i = 0; pTemp[i] && pTemp[i] != ' ' && pTemp[i] != '\t' && pTemp[i] != '\r' && pTemp[i] != '\n' && - pTemp[i] != AMAP_EQN_SYM_AND && pTemp[i] != AMAP_EQN_SYM_OR && - pTemp[i] != AMAP_EQN_SYM_XOR && pTemp[i] != AMAP_EQN_SYM_NEGAFT && - pTemp[i] != AMAP_EQN_SYM_CLOSE; i++ ) + pTemp[i] != AMAP_EQN_SYM_AND && pTemp[i] != AMAP_EQN_SYM_OR && pTemp[i] != AMAP_EQN_SYM_OR2 && + pTemp[i] != AMAP_EQN_SYM_XOR && pTemp[i] != AMAP_EQN_SYM_NEGAFT && pTemp[i] != AMAP_EQN_SYM_CLOSE; + i++ ) { if ( pTemp[i] == AMAP_EQN_SYM_NEG || pTemp[i] == AMAP_EQN_SYM_OPEN ) { |