Lines Matching full:bitset
22 /* This file is the public interface to the bitset abstract data type.
33 /* Attributes used to select a bitset implementation. */
34 enum bitset_attr {BITSET_FIXED = 1, /* Bitset size fixed. */
35 BITSET_VARIABLE = 2, /* Bitset size variable. */
36 BITSET_DENSE = 4, /* Bitset dense. */
37 BITSET_SPARSE = 8, /* Bitset sparse. */
51 struct bbitset_struct b; /* Base bitset data. */
76 bitset bset;
99 /* Return bytes required for bitset of desired type and size. */
102 /* Initialise a bitset with desired type and size. */
103 extern bitset bitset_init (bitset, bitset_bindex, enum bitset_type);
105 /* Select an implementation type based on the desired bitset size
109 /* Create a bitset of desired type and size. The bitset is zeroed. */
110 extern bitset bitset_alloc (bitset_bindex, enum bitset_type);
112 /* Free bitset. */
113 extern void bitset_free (bitset);
115 /* Create a bitset of desired type and size using an obstack. The
116 bitset is zeroed. */
117 extern bitset bitset_obstack_alloc (struct obstack *bobstack,
120 /* Free bitset allocated on obstack. */
121 extern void bitset_obstack_free (bitset);
123 /* Create a bitset of desired size and attributes. The bitset is zeroed. */
124 extern bitset bitset_create (bitset_bindex, bitset_attrs);
126 /* Return bitset type. */
127 extern enum bitset_type bitset_type_get (bitset);
129 /* Return bitset type name. */
130 extern const char *bitset_type_name_get (bitset);
133 /* Set bit BITNO in bitset BSET. */
135 bitset_set (bitset bset, bitset_bindex bitno)
147 /* Reset bit BITNO in bitset BSET. */
149 bitset_reset (bitset bset, bitset_bindex bitno)
161 /* Test bit BITNO in bitset BSET. */
163 bitset_test (bitset bset, bitset_bindex bitno)
175 /* Toggle bit BITNO in bitset BSET and return non-zero if now set. */
178 /* Return size in bits of bitset SRC. */
181 /* Change size of bitset. */
182 extern void bitset_resize (bitset, bitset_bindex);
184 /* Return number of bits set in bitset SRC. */
282 extern bool bitset_compatible_p (bitset bset1, bitset bset2);
285 extern bitset_bindex bitset_next (bitset, bitset_bindex);
288 extern bitset_bindex bitset_prev (bitset, bitset_bindex);
291 extern bitset_bindex bitset_first (bitset);
294 extern bitset_bindex bitset_last (bitset);
297 extern bool bitset_only_set_p (bitset, bitset_bindex);
299 /* Dump bitset. */
300 extern void bitset_dump (FILE *, bitset);
304 the bits set in a bitset:
326 following will print the bits set in a bitset in reverse order:
371 /* Enable bitset stats gathering. */
374 /* Disable bitset stats gathering. */
377 /* Read bitset stats file of accummulated stats. */
380 /* Write bitset stats file of accummulated stats. */
383 /* Dump bitset stats. */
386 /* Function to debug bitset from debugger. */
387 extern void debug_bitset (bitset);
389 /* Function to debug bitset stats from debugger. */