strset_set -> strset_add
strset_clear -> strset_del
strset_test -> strset_get
strset_destroy -> strset_clear
* for (word = strtok(file, " \t\r\n");
* word;
* word = strtok(NULL, " \t\r\n")) {
* for (word = strtok(file, " \t\r\n");
* word;
* word = strtok(NULL, " \t\r\n")) {
- * strset_set(&words, word);
+ * strset_add(&words, word);
* }
* strset_iterate(&words, dump, NULL);
* printf("\n");
* }
* strset_iterate(&words, dump, NULL);
* printf("\n");
-char *strset_test(const struct strset *set, const char *member)
+char *strset_get(const struct strset *set, const char *member)
-bool strset_set(struct strset *set, const char *member)
+bool strset_add(struct strset *set, const char *member)
{
size_t len = strlen(member);
const u8 *bytes = (const u8 *)member;
{
size_t len = strlen(member);
const u8 *bytes = (const u8 *)member;
-char *strset_clear(struct strset *set, const char *member)
+char *strset_del(struct strset *set, const char *member)
{
size_t len = strlen(member);
const u8 *bytes = (const u8 *)member;
{
size_t len = strlen(member);
const u8 *bytes = (const u8 *)member;
-static void destroy(struct strset n)
+static void clear(struct strset n)
{
if (!n.u.s[0]) {
if (likely(n.u.n->byte_num != (size_t)-1)) {
{
if (!n.u.s[0]) {
if (likely(n.u.n->byte_num != (size_t)-1)) {
- destroy(n.u.n->child[0]);
- destroy(n.u.n->child[1]);
+ clear(n.u.n->child[0]);
+ clear(n.u.n->child[1]);
-void strset_destroy(struct strset *set)
+void strset_clear(struct strset *set)
- * strset_test - is this a member of this string set?
+ * strset_get - is this a member of this string set?
* @set: the set.
* @member: the string to search for.
*
* @set: the set.
* @member: the string to search for.
*
* = ENOENT).
*
* Example:
* = ENOENT).
*
* Example:
- * if (strset_test(&set, "hello"))
+ * if (strset_get(&set, "hello"))
* printf("hello is in the set\n");
*/
* printf("hello is in the set\n");
*/
-char *strset_test(const struct strset *set, const char *member);
+char *strset_get(const struct strset *set, const char *member);
- * strset_set - place a member in the string set.
+ * strset_add - place a member in the string set.
* @set: the set.
* @member: the string to place in the set.
*
* @set: the set.
* @member: the string to place in the set.
*
* you want a copy in the set, use strdup().
*
* Example:
* you want a copy in the set, use strdup().
*
* Example:
- * if (!strset_set(&set, "goodbye"))
+ * if (!strset_add(&set, "goodbye"))
* printf("goodbye was already in the set\n");
*/
* printf("goodbye was already in the set\n");
*/
-bool strset_set(struct strset *set, const char *member);
+bool strset_add(struct strset *set, const char *member);
- * strset_clear - remove a member from the string set.
+ * strset_del - remove a member from the string set.
* @set: the set.
* @member: the string to remove from the set.
*
* @set: the set.
* @member: the string to remove from the set.
*
- * This returns the string which was passed to strset_set(), or NULL if
+ * This returns the string which was passed to strset_add(), or NULL if
* the string was not in the map (in which case it sets errno = ENOENT).
*
* This means that if you allocated a string (eg. using strdup()), you can
* free it here.
*
* Example:
* the string was not in the map (in which case it sets errno = ENOENT).
*
* This means that if you allocated a string (eg. using strdup()), you can
* free it here.
*
* Example:
- * if (!strset_clear(&set, "goodbye"))
+ * if (!strset_del(&set, "goodbye"))
* printf("goodbye was not in the set?\n");
*/
* printf("goodbye was not in the set?\n");
*/
-char *strset_clear(struct strset *set, const char *member);
+char *strset_del(struct strset *set, const char *member);
- * strset_destroy - remove every member from the set.
+ * strset_clear - remove every member from the set.
* @set: the set.
*
* The set will be empty after this.
*
* Example:
* @set: the set.
*
* The set will be empty after this.
*
* Example:
- * strset_destroy(&set);
-void strset_destroy(struct strset *set);
+void strset_clear(struct strset *set);
/**
* strset_iterate - ordered iteration over a set
/**
* strset_iterate - ordered iteration over a set
}
for (i = 0; i < NUM; i++)
}
for (i = 0; i < NUM; i++)
- strset_set(&set, str[i]);
+ strset_add(&set, str[i]);
strset_iterate(&set, dump, NULL);
strset_iterate(&set, dump, NULL);
/* Preserve order after deletion. */
for (i = 0; i < NUM; i += 2)
/* Preserve order after deletion. */
for (i = 0; i < NUM; i += 2)
- ok1(strset_clear(&set, str[i]) == str[i]);
+ ok1(strset_del(&set, str[i]) == str[i]);
i = 1;
strset_iterate(&set, in_order_by_2, &i);
for (i = 1; i < NUM; i += 2)
i = 1;
strset_iterate(&set, in_order_by_2, &i);
for (i = 1; i < NUM; i += 2)
- ok1(strset_clear(&set, str[i]) == str[i]);
+ ok1(strset_del(&set, str[i]) == str[i]);
/* empty traverse. */
strset_iterate(&set, in_order_by_2, (unsigned int *)NULL);
/* empty traverse. */
strset_iterate(&set, in_order_by_2, (unsigned int *)NULL);
plan_tests(3);
strset_init(&set);
plan_tests(3);
strset_init(&set);
- ok1(strset_set(&set, "hello"));
- ok1(strset_set(&set, "world"));
+ ok1(strset_add(&set, "hello"));
+ ok1(strset_add(&set, "world"));
strset_iterate(&set, find_string, (const char *)"hello");
ok1(found);
strset_iterate(&set, find_string, (const char *)"hello");
ok1(found);
/* This exits depending on whether all tests passed */
return exit_status();
/* This exits depending on whether all tests passed */
return exit_status();
}
for (i = 0; i < NUM; i++)
}
for (i = 0; i < NUM; i++)
- strset_set(&set, str[i]);
+ strset_add(&set, str[i]);
strset_iterate(&set, dump, NULL);
strset_iterate(&set, dump, NULL);
/* Preserve order after deletion. */
for (i = 0; i < NUM; i += 2)
/* Preserve order after deletion. */
for (i = 0; i < NUM; i += 2)
- ok1(strset_clear(&set, str[i]) == str[i]);
+ ok1(strset_del(&set, str[i]) == str[i]);
i = 1;
strset_iterate(&set, in_order_by_2, &i);
for (i = 1; i < NUM; i += 2)
i = 1;
strset_iterate(&set, in_order_by_2, &i);
for (i = 1; i < NUM; i += 2)
- ok1(strset_clear(&set, str[i]) == str[i]);
+ ok1(strset_del(&set, str[i]) == str[i]);
/* empty traverse. */
strset_iterate(&set, in_order_by_2, (unsigned int *)NULL);
/* insert backwards, should be fine. */
for (i = 0; i < NUM; i++)
/* empty traverse. */
strset_iterate(&set, in_order_by_2, (unsigned int *)NULL);
/* insert backwards, should be fine. */
for (i = 0; i < NUM; i++)
- strset_set(&set, str[NUM-1-i]);
+ strset_add(&set, str[NUM-1-i]);
i = 0;
strset_iterate(&set, in_order, &i);
i = 0;
strset_iterate(&set, in_order, &i);
for (i = 0; i < NUM; i++)
free(str[i]);
for (i = 0; i < NUM; i++)
free(str[i]);
}
for (i = 0; i < NUM; i++)
}
for (i = 0; i < NUM; i++)
- strset_set(&set, str[i]);
+ strset_add(&set, str[i]);
/* Nothing */
sub = strset_prefix(&set, "a");
/* Nothing */
sub = strset_prefix(&set, "a");
/* Everything, *plus* empty string. */
empty = strdup("");
/* Everything, *plus* empty string. */
empty = strdup("");
- strset_set(&set, empty);
+ strset_add(&set, empty);
sub = strset_prefix(&set, "");
/* Check we get *our* empty string back! */
strset_iterate(sub, find_empty, empty);
sub = strset_prefix(&set, "");
/* Check we get *our* empty string back! */
strset_iterate(sub, find_empty, empty);
for (i = 0; i < NUM; i++)
free(str[i]);
for (i = 0; i < NUM; i++)
free(str[i]);
- ok1(!strset_test(&set, str));
+ ok1(!strset_get(&set, str));
- ok1(!strset_test(&set, none));
+ ok1(!strset_get(&set, none));
- ok1(!strset_clear(&set, str));
+ ok1(!strset_del(&set, str));
- ok1(!strset_clear(&set, none));
+ ok1(!strset_del(&set, none));
- ok1(strset_set(&set, str));
- ok1(strset_test(&set, str));
+ ok1(strset_add(&set, str));
+ ok1(strset_get(&set, str));
/* We compare the string, not the pointer. */
/* We compare the string, not the pointer. */
- ok1(strset_test(&set, dup));
- ok1(!strset_test(&set, none));
+ ok1(strset_get(&set, dup));
+ ok1(!strset_get(&set, none));
ok1(errno == ENOENT);
/* Add of duplicate should fail. */
ok1(errno == ENOENT);
/* Add of duplicate should fail. */
- ok1(!strset_set(&set, dup));
+ ok1(!strset_add(&set, dup));
ok1(errno == EEXIST);
/* Delete should return original string. */
ok1(errno == EEXIST);
/* Delete should return original string. */
- ok1(strset_clear(&set, dup) == str);
- ok1(!strset_test(&set, str));
+ ok1(strset_del(&set, dup) == str);
+ ok1(!strset_get(&set, str));
- ok1(!strset_test(&set, none));
+ ok1(!strset_get(&set, none));
ok1(errno == ENOENT);
/* Try insert and delete of empty string. */
ok1(errno == ENOENT);
/* Try insert and delete of empty string. */
- ok1(strset_set(&set, none));
- ok1(strset_test(&set, none));
- ok1(!strset_test(&set, str));
+ ok1(strset_add(&set, none));
+ ok1(strset_get(&set, none));
+ ok1(!strset_get(&set, str));
ok1(errno == ENOENT);
/* Delete should return original string. */
ok1(errno == ENOENT);
/* Delete should return original string. */
- ok1(strset_clear(&set, "") == none);
- ok1(!strset_test(&set, str));
+ ok1(strset_del(&set, "") == none);
+ ok1(!strset_get(&set, str));
- ok1(!strset_test(&set, none));
+ ok1(!strset_get(&set, none));
ok1(errno == ENOENT);
/* Both at once... */
ok1(errno == ENOENT);
/* Both at once... */
- ok1(strset_set(&set, none));
- ok1(strset_set(&set, str));
- ok1(strset_test(&set, str));
- ok1(strset_test(&set, none));
- ok1(strset_clear(&set, "") == none);
- ok1(strset_clear(&set, dup) == str);
+ ok1(strset_add(&set, none));
+ ok1(strset_add(&set, str));
+ ok1(strset_get(&set, str));
+ ok1(strset_get(&set, none));
+ ok1(strset_del(&set, "") == none);
+ ok1(strset_del(&set, dup) == str);
ok1(set.u.n == NULL);
free(dup);
ok1(set.u.n == NULL);
free(dup);