#ifndef DSEG_H #define DSEG_H #include "hashmap.h" #include struct dseg_entry { enum { ENT_STRING, } type; union { const char* string; } key; char* symbol; }; void dseg_init(struct hash_map* dseg); void dseg_destroy(struct hash_map* dseg); const char* dseg_put(struct hash_map* dseg, struct dseg_entry entry); void emit_dseg(FILE* outfile, const struct hash_map* dseg); #endif