static void dump_cclp (FILE* file, int cclp) { int i; putc ('[', file); for (i = 0; i < csize; ++i) { if (ccl_contains(cclp, i)){ int start_char = i; putc (' ', file); fputs (readable_form (i), file); while (++i < csize && ccl_contains(cclp,i)) ; if (i - 1 > start_char) /* this was a run */ fprintf (file, "-%s", readable_form (i - 1)); putc (' ', file); } } putc (']', file); }
void list_character_set (FILE *file, int cset[]) { int i; putc ('[', file); for (i = 0; i < csize; ++i) { if (cset[i]) { int start_char = i; putc (' ', file); fputs (readable_form (i), file); while (++i < csize && cset[i]) ; if (i - 1 > start_char) /* this was a run */ fprintf (file, "-%s", readable_form (i - 1)); putc (' ', file); } } putc (']', file); }
void check_char(int c) { if ( c >= CSIZE ) lerrsf( _( "bad character '%s' detected in check_char()" ), readable_form( c ) ); if ( c >= csize ) lerrsf( _( "scanner requires -8 flag to use the character %s" ), readable_form( c ) ); }
void genecs() { register int i, j; int numrows; if ( csize == 65536 && long_align ) out_str_dec( C_long_decl, "yy_ec", csize ); else if ( csize == 65536 && numecs < 256 ) out_str_dec( C_uchar_decl, "yy_ec", csize ); else if ( csize == 65536 && numecs < 65536 ) out_str_dec( C_ushort_decl, "yy_ec", csize ); else out_str_dec( C_int_decl, "yy_ec", csize ); for ( i = 1; i < csize; ++i ) { if ( caseins && (i >= 'A') && (i <= 'Z') ) ecgroup[i] = ecgroup[clower( i )]; ecgroup[i] = ABS( ecgroup[i] ); mkdata( ecgroup[i] ); } dataend(); if ( trace ) { fputs( _( "\n\nEquivalence Classes:\n\n" ), stderr ); numrows = csize / 8; for ( j = 0; j < numrows; ++j ) { for ( i = j; i < csize; i = i + numrows ) { fprintf( stderr, "%4s = %-2d", readable_form( i ), ecgroup[i] ); putc( ' ', stderr ); } putc( '\n', stderr ); } } }
void genecs() { Char clower(); static char C_char_decl[] = "static const %s %s[%d] =\n { 0,\n"; /* } so vi doesn't get confused */ register int i, j; int numrows; if ( numecs < csize ) printf( C_char_decl, "YY_CHAR", "yy_ec", csize ); else printf( C_char_decl, "short", "yy_ec", csize ); for ( i = 1; i < csize; ++i ) { if ( caseins && (i >= 'A') && (i <= 'Z') ) ecgroup[i] = ecgroup[clower( i )]; ecgroup[i] = abs( ecgroup[i] ); mkdata( ecgroup[i] ); } dataend(); if ( trace ) { fputs( "\n\nEquivalence Classes:\n\n", stderr ); numrows = csize / 8; for ( j = 0; j < numrows; ++j ) { for ( i = j; i < csize; i = i + numrows ) { fprintf( stderr, "%4s = %-2d", readable_form( i ), ecgroup[i] ); putc( ' ', stderr ); } putc( '\n', stderr ); } } }
void genecs(void) { int i, j; int numrows; out_str_dec( C_int_decl, "yy_ec", csize ); for ( i = 1; i < csize; ++i ) { if ( caseins && (i >= 'A') && (i <= 'Z') ) ecgroup[i] = ecgroup[clower( i )]; ecgroup[i] = ABS( ecgroup[i] ); mkdata( ecgroup[i] ); } dataend(); if ( trace ) { fputs( _( "\n\nEquivalence Classes:\n\n" ), stderr ); numrows = csize / 8; for ( j = 0; j < numrows; ++j ) { for ( i = j; i < csize; i = i + numrows ) { fprintf( stderr, "%4s = %-2d", readable_form( i ), ecgroup[i] ); putc( ' ', stderr ); } putc( '\n', stderr ); } } }