version 1.9, 2015/11/19 19:43:40 |
version 1.10, 2017/04/12 14:53:27 |
|
|
ccladd( currccl, c ); \ |
ccladd( currccl, c ); \ |
}while(0) |
}while(0) |
|
|
/* While POSIX defines isblank(), it's not ANSI C. */ |
|
#define IS_BLANK(c) ((c) == ' ' || (c) == '\t') |
|
|
|
/* On some over-ambitious machines, such as DEC Alpha's, the default |
/* On some over-ambitious machines, such as DEC Alpha's, the default |
* token type is "long" instead of "int"; this leads to problems with |
* token type is "long" instead of "int"; this leads to problems with |
* declaring yylval in flexdef.h. But so far, all the yacc's I've seen |
* declaring yylval in flexdef.h. But so far, all the yacc's I've seen |
|
|
ccl_expr: |
ccl_expr: |
CCE_ALNUM { CCL_EXPR(isalnum); } |
CCE_ALNUM { CCL_EXPR(isalnum); } |
| CCE_ALPHA { CCL_EXPR(isalpha); } |
| CCE_ALPHA { CCL_EXPR(isalpha); } |
| CCE_BLANK { CCL_EXPR(IS_BLANK); } |
| CCE_BLANK { CCL_EXPR(isblank); } |
| CCE_CNTRL { CCL_EXPR(iscntrl); } |
| CCE_CNTRL { CCL_EXPR(iscntrl); } |
| CCE_DIGIT { CCL_EXPR(isdigit); } |
| CCE_DIGIT { CCL_EXPR(isdigit); } |
| CCE_GRAPH { CCL_EXPR(isgraph); } |
| CCE_GRAPH { CCL_EXPR(isgraph); } |
|
|
|
|
| CCE_NEG_ALNUM { CCL_NEG_EXPR(isalnum); } |
| CCE_NEG_ALNUM { CCL_NEG_EXPR(isalnum); } |
| CCE_NEG_ALPHA { CCL_NEG_EXPR(isalpha); } |
| CCE_NEG_ALPHA { CCL_NEG_EXPR(isalpha); } |
| CCE_NEG_BLANK { CCL_NEG_EXPR(IS_BLANK); } |
| CCE_NEG_BLANK { CCL_NEG_EXPR(isblank); } |
| CCE_NEG_CNTRL { CCL_NEG_EXPR(iscntrl); } |
| CCE_NEG_CNTRL { CCL_NEG_EXPR(iscntrl); } |
| CCE_NEG_DIGIT { CCL_NEG_EXPR(isdigit); } |
| CCE_NEG_DIGIT { CCL_NEG_EXPR(isdigit); } |
| CCE_NEG_GRAPH { CCL_NEG_EXPR(isgraph); } |
| CCE_NEG_GRAPH { CCL_NEG_EXPR(isgraph); } |