Files
jq/c/lexer.l
T

34 lines
677 B
Plaintext

%{
#include "compile.h"
#include "parser.tab.h" /* Generated by bison. */
%}
%option noyywrap nounput noinput nodefault
%option reentrant
%option bison-bridge bison-locations
%%
"==" { return EQ; }
"as" { return AS; }
"def" { return DEF; }
"|=" { return SETPIPE; }
"."|"="|";"|"["|"]"|","|":"|"("|")"|"{"|"}"|"|"|"+"|"\$" { return yytext[0];}
\"(\\.|[^\\"])*\" |
-?[0-9.]+([eE][+-]?[0-9]+)? {
yylval->literal = jv_parse_sized(yytext, yyleng); return LITERAL;
}
[[:alnum:]]+ { yylval->literal = jv_string(yytext); return IDENT;}
[ \n\t]+ {}
%%
/* perhaps these should be calls... */
/*
"true" { return TRUE; }
"false" { return FALSE; }
"null" { return NULL; }
*/