wraith-lang/generators/wraith.lex

57 lines
2.1 KiB
Plaintext

%{
#include "y.tab.h"
%}
%option noyywrap
%%
"void" return VOID;
"int" return INT;
"uint" return UINT;
"float" return FLOAT;
"double" return DOUBLE;
"string" return STRING;
"bool" return BOOL;
"MemoryAddress" return MEMORYADDRESS;
"struct" return STRUCT;
"interface" return INTERFACE;
"return" return RETURN;
"static" return STATIC;
"Reference" return REFERENCE;
"alloc" return ALLOC;
"if" return IF;
"else" return ELSE;
"in" return IN;
"for" return FOR;
[0-9]+ return NUMBER;
[a-zA-Z][a-zA-Z0-9]* return ID;
\".*\" return STRING_LITERAL;
"+" return PLUS;
"-" return MINUS;
"*" return STAR;
"/" return SLASH;
"%" return PERCENT;
"<" return LESS_THAN;
">" return GREATER_THAN;
"=" return EQUAL;
"!" return BANG;
"|" return BAR;
"&" return AMPERSAND;
"." return POINT;
"," return COMMA;
";" return SEMICOLON;
":" return COLON;
"?" return QUESTION;
"@" return AT;
"(" return LEFT_PAREN;
")" return RIGHT_PAREN;
"[" return LEFT_BRACKET;
"]" return RIGHT_BRACKET;
"{" return LEFT_BRACE;
"}" return RIGHT_BRACE;
"//" return COMMENT;
" " ;
"\n" ;
[ \t] ;
%%