Abstract set type using GTree.
More...
#include <gfsmMem.h>
#include <gfsmSet.hi>
Go to the source code of this file.
Macros |
|
#define | gfsm_set_contains(set, key) g_tree_lookup(set,key) |
#define | gfsm_set_insert(set, key) g_tree_insert(set,key,(gpointer)1) |
#define | gfsm_set_size(set) g_tree_nnodes(set) |
#define | gfsm_set_remove(set, key) g_tree_remove(set,key) |
#define | gfsm_set_foreach(set, func, data) g_tree_foreach(set,func,data) |
Typedefs |
typedef GTree | gfsmSet |
| Type for sets of pointers really just an ugly wrapper for GTree.
|
Detailed Description
Macro Definition Documentation
#define gfsm_set_free g_tree_destroy |
#define gfsm_set_contains |
( |
|
set, |
|
|
|
key |
|
) |
| g_tree_lookup(set,key) |
#define gfsm_set_insert |
( |
|
set, |
|
|
|
key |
|
) |
| g_tree_insert(set,key,(gpointer)1) |
insert a new key into the set
#define gfsm_set_size |
( |
|
set | ) |
g_tree_nnodes(set) |
#define gfsm_set_remove |
( |
|
set, |
|
|
|
key |
|
) |
| g_tree_remove(set,key) |
Remove an element from a set
#define gfsm_set_foreach |
( |
|
set, |
|
|
|
func, |
|
|
|
data |
|
) |
| g_tree_foreach(set,func,data) |
Traversal (see g_tree_foreach)
Typedef Documentation
Function Documentation
static gfsmSet* gfsm_set_new_full |
( |
GCompareDataFunc |
key_cmp_func, |
|
|
gpointer |
key_cmp_data, |
|
|
GDestroyNotify |
key_free_func |
|
) |
| |
|
inlinestatic |
Create and return a new set
static gfsmSet* gfsm_set_new |
( |
GCompareFunc |
key_cmp_func | ) |
|
|
inlinestatic |
gfsm_set_new(key_compare_func): create and return a new set (returned set will not free elements)
Copy set src to dst.
- Returns
- dst
gboolean gfsm_set_copy_foreach_func |
( |
gpointer |
key, |
|
|
gpointer |
value, |
|
|
gfsmSet * |
dst |
|
) |
| |
void gfsm_set_clear |
( |
gfsmSet * |
set | ) |
|
Add all elements of set set2 to set1. If dupfunc is non-NULL, it will be used to copy elements from set2, otherwise elements will be copied as literal gpointer values.
- Returns
- altered set1
Remove all elements in set2 from set1.
- Returns
- altered set1
Remove all elements from set1 which are not also in set2.
- Returns
- altered set1
static GSList* gfsm_set_to_slist |
( |
gfsmSet * |
set | ) |
|
|
inlinestatic |
Get a GSList of a set's elements
gboolean gfsm_set_to_slist_foreach_func |
( |
gpointer |
key, |
|
|
gpointer |
value, |
|
|
GSList ** |
dst |
|
) |
| |
static void gfsm_set_to_ptr_array |
( |
gfsmSet * |
set, |
|
|
GPtrArray * |
array |
|
) |
| |
|
inlinestatic |
Append a set's elements to a GPtrArray
gboolean gfsm_set_to_ptr_array_foreach_func |
( |
gpointer |
key, |
|
|
gpointer |
value, |
|
|
GPtrArray * |
dst |
|
) |
| |
Low-level foreach utilitity for gfsm_set_to_array()