// SYMBOL.H - Symbol Handling
// Copyright (C) 199x Landon Dyer, 2011 Reboot and Friends
// RMAC derived from MADMAC v1.07 Written by Landon Dyer, 1986
-// Source Utilised with the Kind Permission of Landon Dyer
+// Source utilised with the kind permission of Landon Dyer
//
#ifndef __SYMBOL_H__
char * sname; // * -> Symbol's print-name
struct LineList * lineList; // * -> Macro's linked list of lines
struct LineList * last; // * -> end of macro linked list
+ uint32_t uid; // Symbol's unique ID
};
-// Globals, externals etc
+// Globals, externals, etc.
extern int curenv;
extern char subttl[];
-// Prototypes
+// Exported functions
SYM * lookup(char *, int, int);
void InitSymbolTable(void);
SYM * NewSymbol(char *, int, int);
-void sym_decl(SYM *);
-int syg_fix(void);
+void AddToSymbolDeclarationList(SYM *);
+void ForceUndefinedSymbolsGlobal(void);
int symtable(void);
int sy_assign(char *, char *(*)());
+char * GetSymbolNameByUID(uint32_t);
#endif // __SYMBOL_H__
+