Release 981025.
[wine/gsoc-2012-control.git] / rc / parser.l
blob6b98c8da6b4270cc8192f00c03108d796b194545
1 /* -*-C-*-
2  *
3  * Copyright  Martin von Loewis, 1994
4  *
5  */
6 %{
8 #include <string.h>
9 #include <stdio.h>
10 #include <stdlib.h>
11 #include "parser.h"
12 #include "y.tab.h"
14 #define YY_NO_UNPUT
16 int line_number=1;
19 ACCELERATORS    return ACCELERATORS;
20 ALT             return ALT;
21 ASCII           return ASCII;
22 BEGIN           return tBEGIN;
23 BITMAP          return tBITMAP;
24 CAPTION         return CAPTION;
25 CHECKBOX        return CHECKBOX;
26 CHECKED         return CHECKED;
27 CLASS           return CLASS;
28 COMBOBOX        return COMBOBOX;
29 CONTROL         return CONTROL;
30 CTEXT           return CTEXT;
31 CURSOR          return CURSOR;
32 DEFPUSHBUTTON   return DEFPUSHBUTTON;
33 DIALOG          return DIALOG;
34 DISCARDABLE     return DISCARDABLE;
35 EDITTEXT        return EDITTEXT;
36 END             return tEND;
37 FIXED           return tFIXED;
38 FONT            return FONT;
39 GRAYED          return GRAYED;
40 GROUPBOX        return GROUPBOX;
41 HELP            return HELP;
42 ICON            return ICON;
43 INACTIVE        return INACTIVE;
44 LISTBOX         return LISTBOX;
45 LTEXT           return LTEXT;
46 MENU            return MENU;
47 MENUBARBREAK    return MENUBARBREAK;
48 MENUBREAK       return MENUBREAK;
49 MENUITEM        return MENUITEM;
50 MOVEABLE        return MOVEABLE;
51 LOADONCALL      return LOADONCALL;
52 NOINVERT        return NOINVERT;
53 NOT                     return NOT;
54 NUMBER          return NUMBER;
55 POPUP           return POPUP;
56 PRELOAD         return PRELOAD;
57 PUSHBUTTON      return PUSHBUTTON;
58 PURE            return PURE;
59 RADIOBUTTON     return RADIOBUTTON;
60 RCDATA          return RCDATA;
61 RTEXT           return RTEXT;
62 SCROLLBAR       return SCROLLBAR;
63 SHIFT           return SHIFT;
64 SEPARATOR       return SEPARATOR;
65 STRING          return tSTRING;
66 STRINGTABLE     return STRINGTABLE;
67 STYLE           return STYLE;
68 VERSIONINFO     return VERSIONINFO;
69 VIRTKEY         return VIRTKEY;
70 \{                      return tBEGIN;
71 \}                      return tEND;
72 [+-]?[0-9]+     yylval.num=atoi(yytext);return NUMBER;
73 0x[0-9A-Fa-f]+L?        yylval.num=strtoul(yytext,0,16);return NUMBER;
74 [A-Za-z][A-Za-z_0-9]*   yylval.str=strdup(yytext);return IDENT;
75 \"[^"]*\"       yylval.str=parse_c_string(yytext);return tSTRING;
76 \'[^']*\'   yylval.str=strdup(yytext+1);return SINGLE_QUOTED;
77 \n                      { line_number++; }
78 [ \t\r]                 ;
79 .                       return yytext[0];
82 #ifndef yywrap
83 int yywrap(void) { return 1; }
84 #endif