X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fadt%2Fset.h;h=746dc95f60f08d75e309dc8196b440e645e83ca4;hb=e788b4026fcd2d87cf70cd6b117f415399e7883e;hp=a97ca622f72b4f0849bc7fbc407136e20ea60d06;hpb=ffe4c677aa8e6bac4fe345dd0c92d54792f013bf;p=libfirm diff --git a/ir/adt/set.h b/ir/adt/set.h index a97ca622f..746dc95f6 100644 --- a/ir/adt/set.h +++ b/ir/adt/set.h @@ -35,8 +35,8 @@ typedef struct set set; typedef struct set_entry { unsigned hash; /**< the hash value of the element */ size_t size; /**< the size of the element */ - int dptr[1]; /**< the element itself, data copied in must not need more - alignment than this */ + int dptr[1]; /**< the element itself, data copied in must not need more + alignment than this */ } set_entry; /** @@ -50,17 +50,18 @@ typedef struct set_entry { * 0 if the elements are identically, non-zero else * * @note - * Although it is possible to define different meanings for equality of two - * elements of a sets, they can be only equal if there sizes are - * equal. This is checked before the compare function is called. + * Although it is possible to define different meanings of equality + * of two elements of a set, they can be only equal if their sizes are + * are equal. This is checked before the compare function is called. */ typedef int (*set_cmp_fun) (const void *elt, const void *key, size_t size); /** * Creates a new set. * - * @param func the compare function of this set - * @param slots number of initial slots + * @param func The compare function of this set. + * @param slots Initial number of collision chains. I.e., #slots + * different keys can be hashed without collisions. * * @returns * created set @@ -103,7 +104,7 @@ void *set_find (set *set, const void *key, size_t size, unsigned hash); * @return a pointer to the inserted element * * @note - * It is not possible to insert on element more than once. If an element + * It is not possible to insert one element more than once. If an element * that should be inserted is already in the set, this functions does * nothing but returning its pointer. */ @@ -196,7 +197,16 @@ void set_stats (set *set); #endif #ifdef DEBUG -void set_describe (set *); +/** + * Describe a set. + * + * Writes a description of a set to stdout. The description includes: + * - a header telling how many elements (nkey) and segments (nseg) are in use + * - for every collision chain the number of element with its hash values + * + * @param set the set + */ +void set_describe (set *set); #endif