summaryrefslogtreecommitdiff
path: root/lib/bitset.h
diff options
context:
space:
mode:
authorAkim Demaille <akim@epita.fr>2002-03-04 14:15:01 +0000
committerAkim Demaille <akim@epita.fr>2002-03-04 14:15:01 +0000
commit345cea780a4d3d11673c176cde39e20a043a1dea (patch)
tree2df7a968b68e59bb3da205c5a722becea3ac51e7 /lib/bitset.h
parent564801f7958888947a9b82d3018b8cd4498fdc45 (diff)
downloadbison-345cea780a4d3d11673c176cde39e20a043a1dea.tar.gz
* lib/bbitset.h, lib/bitset.c, lib/bitset.h, lib/bitsetv.c,
* lib/bitsetv.h, lib/ebitset.c, lib/lbitset.c, lib/sbitset.c: Update. From Michael Hayes.
Diffstat (limited to 'lib/bitset.h')
-rw-r--r--lib/bitset.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/bitset.h b/lib/bitset.h
index b96a7e67..62d4c651 100644
--- a/lib/bitset.h
+++ b/lib/bitset.h
@@ -179,6 +179,9 @@ do \
#define bitset_test(SRC, BITNO) BITSET_TEST_ (SRC, BITNO)
#endif
+/* Toggle bit BITNO in bitset BSET and return non-zero if now set. */
+extern int bitset_toggle PARAMS ((bitset, bitset_bindex));
+
/* DST = 0. */
extern int bitset_zero PARAMS ((bitset));
@@ -215,9 +218,6 @@ extern int bitset_xor PARAMS ((bitset, bitset, bitset));
/* DST = SRC1 & ~SRC2. Return non-zero if DST != SRC1 & ~SRC2. */
extern int bitset_andn PARAMS ((bitset, bitset, bitset));
-/* DST = SRC1 | ~SRC2. Return non-zero if DST != SRC1 | ~SRC2. */
-extern int bitset_orn PARAMS ((bitset, bitset, bitset));
-
/* DST = (SRC1 | SRC2) & SRC3. Return non-zero if
DST != (SRC1 | SRC2) & SRC3. */
extern int bitset_or_and PARAMS ((bitset, bitset, bitset, bitset));
@@ -236,6 +236,9 @@ extern int bitset_next PARAMS ((bitset, bitset_bindex));
/* Find previous bit set in BSET starting from and including BITNO. */
extern int bitset_prev PARAMS ((bitset, bitset_bindex));
+/* Return non-zero if BITNO in SRC is the only set bit. */
+extern int bitset_only_set_p PARAMS ((bitset, bitset_bindex));
+
/* Find list of up to NUM bits set in BSET starting from and including
*NEXT. Return with actual number of bits found and with *NEXT
indicating where search stopped. */