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;
/**
* 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);
* @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.
*/
/**
* Breaks the iteration of a set. Must be called before
- * the next pset_first() call if the iteration was NOT
+ * the next set_first() call if the iteration was NOT
* finished.
*
- * @param pset the pset
+ * @param set the set
*/
void set_break (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