#ifndef _PLY_SYM_H #define _PLY_SYM_H #include "type.h" typedef struct symtab symtab_t; typedef struct sym { symtab_t *st; const char *name; type_t *type; } sym_t; struct symtab { sym_t *sym; size_t len; }; sym_t *sym_get(symtab_t *st, const char *name); int sym_add(symtab_t *st, const char *name, type_t *type, sym_t **new); void sym_dump(sym_t *sym, FILE *fp); void symtab_dump(symtab_t *st, FILE *fp); #endif /* _PLY_SYM_H */