2 * ============================================================================
11 * This is the lex file for the concurrency service script language.
14 * Torben Worm <tworm@cs.wustl.edu>
16 * ============================================================================
18 %option noyywrap nounput noinput always-interactive
20 #include "CC_command.h"
21 #include "CC_command.tab.h"
25 extern char line_buf[500];
31 start return T_START_CMD;
32 create return T_CREATE_CMD;
33 lock return T_LOCK_CMD;
34 unlock return T_UNLOCK_CMD;
35 try_lock return T_TRYLOCK_CMD;
36 change_mode return T_CHANGEMODE_CMD;
37 sleep return T_SLEEP_CMD;
38 wait return T_WAIT_CMD;
39 print return T_PRINT_CMD;
40 repeat return T_REPEAT_CMD;
41 exception return T_EXCEP_CMD;
42 lookup return T_LOOKUP_CMD;
44 intention_read return T_IREAD;
45 upgrade return T_UPGRADE;
47 intention_write return T_IWRITE;
48 \".*\" { yylval.id = ACE_OS::strdup(&yytext[1]);
49 yylval.id[yyleng-2]='\0';
51 [0-9]+ { yylval.num = atoi(yytext); return T_NUM; }
52 [A-Za-z][A-Za-z_0-9\.:/]* { yylval.id = ACE_OS::strdup(yytext);
57 ACE_OS::strcpy(line_buf, yytext+1);