-/** The current ident module implementation. */
-static ident_if_t impl;
-
-/**
- * Stores a string in the ident module and returns a handle for the string.
- *
- * @param handle the handle for the set
- * @param str the string which shall be stored
- *
- * @return id - a handle for the generated ident
- *
- * Default implementation using libfirm sets.
- */
-static ident *set_new_id_from_chars(void *handle, const char *str, int len)
-{
- set *id_set = handle;
-
- assert(len > 0);
- return (ident *)set_hinsert0(id_set, str, len, ID_HASH(str, len));
-}
-
-/**
- * Stores a string in the ident module and returns a handle for the string.
- *
- * @param handle the handle for the set
- * @param str the string (or whatever) which shall be stored
- * @param len the length of the data in bytes
- *
- * Default implementation using libfirm sets.
- */
-static ident *set_new_id_from_str(void *handle, const char *str)
-{
- assert(str);
- return (ident *)set_new_id_from_chars(handle, str, strlen(str));
-}
-
-/**
- * Returns a string represented by an ident.
- *
- * @param handle the handle for the set
- * @param id the ident
- *
- * Default implementation using libfirm sets.
- */
-static const char *set_get_id_str(void *handle, ident *id)
-{
- struct set_entry *entry = (struct set_entry *)id;
-
- return (const char *)entry->dptr;
-}
-
-/**
- * Returns the length of the string represented by an ident.
- *
- * @param handle the handle for the set
- * @param id the ident
- *
- * Default implementation using libfirm sets.
- */
-static int set_get_id_strlen(void *handle, ident *id)
-{
- struct set_entry *entry = (struct set_entry *)id;
-
- return entry->size;
-}
-
-/**
- * Default implementation using libfirm sets.
- */
-void set_finish_ident(void *handle) {
- set *id_set = handle;
-
- del_set(id_set);
-}