%option noyywrap

%{
#include <cstdlib>
#include "syntree.hpp"
#include <string>
#include <vector>
#include <iostream>
using namespace std;

#include "functions.tab.hpp"
%}

%%
[-=+*/(){},;?:] return *yytext;
==	return EQ;
function return FUNCTION;
print    return PRINT;
[a-z_]+	 {	yylval.string_a = new string(yytext); 	return ID;}
[0-9]+	 {	yylval.int_a = atoi(yytext); 	return NUM;}
[ \n\t]
%%
