xref: /freebsd/contrib/dma/aliases_scan.l (revision 11d38a5764295585a2472d5e861fa8abe1a11eb2)
1a9e8641dSBaptiste Daroussin %{
2a9e8641dSBaptiste Daroussin 
3a9e8641dSBaptiste Daroussin #include <string.h>
4*e56bad4aSBaptiste Daroussin #include "dma.h"
5a9e8641dSBaptiste Daroussin #include "aliases_parse.h"
6a9e8641dSBaptiste Daroussin 
7a9e8641dSBaptiste Daroussin #define YY_NO_INPUT
8a9e8641dSBaptiste Daroussin 
9a9e8641dSBaptiste Daroussin %}
10a9e8641dSBaptiste Daroussin 
11a9e8641dSBaptiste Daroussin %option yylineno
12a9e8641dSBaptiste Daroussin %option nounput
13a9e8641dSBaptiste Daroussin 
14a9e8641dSBaptiste Daroussin %%
15a9e8641dSBaptiste Daroussin 
16a9e8641dSBaptiste Daroussin [^:,#[:space:][:cntrl:]]+	{yylval.ident = strdup(yytext); return T_IDENT;}
17a9e8641dSBaptiste Daroussin ^([[:blank:]]*(#.*)?\n)+	;/* ignore empty lines */
18a9e8641dSBaptiste Daroussin [:,\n]				return yytext[0];
19a9e8641dSBaptiste Daroussin (\n?[[:blank:]]+|#.*)+		;/* ignore whitespace and continuation */
20a9e8641dSBaptiste Daroussin \\\n				;/* ignore continuation.  not allowed in comments */
21a9e8641dSBaptiste Daroussin .				return T_ERROR;
22a9e8641dSBaptiste Daroussin <<EOF>>				return T_EOF;
23a9e8641dSBaptiste Daroussin 
24a9e8641dSBaptiste Daroussin %%
25