#pragma once #include "util.h" typedef enum { internalSymbol, variableSymbol } symbolType; int addSymbolInternal(char *symbol, object (*function)()); int addSymbolVariable(char *symbol, object variable); /* служе за различите методе дефинисања нових симбола у језику * враћају 1 уколико је нови симбол успешно додат, а 0 уколико није * (постоји симбол са истим именом) */ int symbolExists(char *symbol); /* враћа 1 уколико симбол постоји и 0 у супротном */ symbolType typeOf(char *symbol); object (*internalFunction(char *symbol)) (object parameters); /* враћа показивач на функцију уколико је симбол дефинисан као интерна * функција, NULL уколико симбол није функција или уколико не постоји * */ object referVariable(char *symbol); /* враћа вредност на коју се односи име симбола у табели */