libFirm
|
optimized version of set for sets containing only pointers (deprecated) More...
Go to the source code of this file.
Data Structures | |
struct | pset_entry |
The entry of a pset, representing an element pointer in the set and its meta-information. More... |
Macros | |
#define | pset_insert_ptr(set, key) pset_insert(set, key, hash_ptr(key)) |
Inserts into pointer set with default hash function. | |
#define | pset_hinsert_ptr(set, key) pset_hinsert(set, key, hash_ptr(key)) |
Inserts into pointer set with default hash function and return entry. | |
#define | pset_remove_ptr(set, key) pset_remove(set, key, hash_ptr(key)) |
Removes pointer from pointer set with default hash function. | |
#define | pset_find_ptr(set, key) pset_find(set, key, hash_ptr(key)) |
Finds pointer in pointer set with default hash function. | |
#define | pset_new_ptr(slots) new_pset(pset_default_ptr_cmp, slots) |
Creates new pointer set with default compare function. | |
#define | pset_new_ptr_default() pset_new_ptr(64) |
Creates new pointer set with default compare function and default size. | |
#define | pset_first(type, pset) ((type*)pset_first((pset))) |
Returns the first element of a pset. | |
#define | pset_next(type, pset) ((type*)pset_next((pset))) |
Returns the next element of a pset. | |
#define | foreach_pset(pset, type, entry) for (type *entry = pset_first(type, pset); entry; entry = pset_next(type, pset)) |
Iterates oven an pset. |
Typedefs | |
typedef struct pset | pset |
The abstract type of a pset (Set of pointers). | |
typedef int(* | pset_cmp_fun )(const void *elt, const void *key) |
The type of a set compare function. |
Functions | |
int | pset_default_ptr_cmp (const void *x, const void *y) |
The default comparison function for pointers. | |
pset * | new_pset (pset_cmp_fun func, size_t slots) |
Creates a new pset. | |
void | del_pset (pset *pset) |
Deletes a pset. | |
size_t | pset_count (pset *pset) |
Returns the number of elements in a pset. | |
void * | pset_find (pset *pset, const void *key, unsigned hash) |
Searches an element pointer in a pset. | |
void * | pset_insert (pset *pset, const void *key, unsigned hash) |
Inserts an element pointer into a pset. | |
pset_entry * | pset_hinsert (pset *pset, const void *key, unsigned hash) |
Inserts an element pointer into a pset and returns its pset_entry. | |
void * | pset_remove (pset *pset, const void *key, unsigned hash) |
Removes an element from a pset. | |
void * | pset_first (pset *pset) |
Returns the first element of a pset. | |
void * | pset_next (pset *pset) |
Returns the next element of a pset. | |
void | pset_break (pset *pset) |
Breaks the iteration of a set. | |
void | pset_insert_pset_ptr (pset *target, pset *src) |
Inserts all elements of the pointer set src into the set target (union). |
optimized version of set for sets containing only pointers (deprecated)
Definition in file pset.h.