%{
#include "funkcija.h"
#include <map>
#using namespace std;

map<string, Funkcija*> vars;
%}

%union {
	Funkcija* fun_attr;
	float	num_attr;
	char*   str_attr;
}

%token SIN COS EXP
%token<num_attr> NUM
%token<str_attr> ID
%type<fun_attr> expr


%%
program : program linija
	|
	;

linija : ID '=' izraz '\n'
	| ID '[' NUM ']'
	| ID "'"
	;

expr : 'x' {$$ = new IdentickaFunkcija();}
	| NUM { $$ = new KonstantnaFunkcija($1); }
	;
%%
main()
{
	yyparse();
}