1
/* $Id: res_lex.l,v 1.6 2004/10/27 14:11:58 djdelorie Exp $ */
15
#include "res_parse.h"
17
#ifdef HAVE_LIBDMALLOC
21
RCSID("$Id: res_lex.l,v 1.6 2004/10/27 14:11:58 djdelorie Exp $");
23
#define YY_INPUT(buf,result,max_size) { result = res_parse_getchars(buf, max_size); }
25
extern int res_lineno;
26
extern int res_parse_getchars(char *buf, int max_size);
31
%option outfile="lex.yy.c"
35
PARENSTR ([^ (){}=\"\'\t\r\n]|\([^\)]*\))+
41
\"[^"]*\" { reslval.sval = strdup(yytext+1);
42
reslval.sval[strlen(reslval.sval) - 1] = 0;
45
\'[^']*\' { reslval.sval = strdup(yytext+1);
46
reslval.sval[strlen(reslval.sval) - 1] = 0;
49
{COMMENT}\n { res_lineno++; }
50
[ \t\r\n] { if (yytext[0] == '\n') res_lineno++; }
52
{INCSTR} { reslval.sval = strdup(yytext+1);
55
{PARENSTR} { reslval.sval = strdup(yytext);
58
. { return yytext[0]; }