17 main := ( 'a' .. 'c' | 'c' .. 'e' | 'm' .. 'n' | 'a' .. 'z' ) '\n';
22 void range_init( struct range *fsm )
27 void range_execute( struct range *fsm, const char *_data, int _len )
29 const char *p = _data;
30 const char *pe = _data+_len;
35 int range_finish( struct range *fsm )
37 if ( fsm->cs == range_error )
39 if ( fsm->cs >= range_first_final )
46 void test( char *buf )
48 int len = strlen( buf );
50 range_execute( &fsm, buf, len );
51 if ( range_finish( &fsm ) > 0 )
68 #ifdef _____OUTPUT_____