cirilisp/symtable.h

27 lines
1.1 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#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);
/* враћа вредност на коју се односи име симбола у табели */