#ifndef intern_h #define intern_h #include typedef struct intern_table intern_table_t; typedef const char *intern_t; intern_table_t *intern_table_alloc(void); void intern_table_free(intern_table_t *table); intern_t intern(intern_table_t *table, const char *str); intern_t intern_prefix(intern_table_t *table, const char *str, size_t len); const char * intern_exists(intern_table_t *table, const char *str); #endif