xref: /netbsd-src/external/bsd/flex/dist/examples/manual/user_act.lex (revision 3c3a7b7603b4ed4cb76dd5c5a3e781ddca2349bb)
1*3c3a7b76Schristos %{
2*3c3a7b76Schristos 
3*3c3a7b76Schristos #include <ctype.h>
4*3c3a7b76Schristos 
5*3c3a7b76Schristos void user_action(void);
6*3c3a7b76Schristos 
7*3c3a7b76Schristos #define YY_USER_ACTION user_action();
8*3c3a7b76Schristos 
9*3c3a7b76Schristos %}
10*3c3a7b76Schristos 
11*3c3a7b76Schristos %%
12*3c3a7b76Schristos 
13*3c3a7b76Schristos .*         ECHO;
14*3c3a7b76Schristos \n         ECHO;
15*3c3a7b76Schristos 
16*3c3a7b76Schristos %%
17*3c3a7b76Schristos 
18*3c3a7b76Schristos void user_action(void)
19*3c3a7b76Schristos {
20*3c3a7b76Schristos   int loop;
21*3c3a7b76Schristos 
22*3c3a7b76Schristos   for(loop=0; loop<yyleng; loop++){
23*3c3a7b76Schristos     if(islower(yytext[loop])){
24*3c3a7b76Schristos        yytext[loop] = toupper(yytext[loop]);
25*3c3a7b76Schristos     }
26*3c3a7b76Schristos   }
27*3c3a7b76Schristos }
28*3c3a7b76Schristos 
29*3c3a7b76Schristos 
30*3c3a7b76Schristos 
31*3c3a7b76Schristos 
32