#ifndef DSEG_H
#define DSEG_H

#include "hashmap.h"
#include <stdio.h>

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
