]> git.saurik.com Git - bison.git/blobdiff - lib/bitsetv.h
* doc/bison.texinfo (How Can I Reset the Parser): More about start
[bison.git] / lib / bitsetv.h
index 34617054e8168c1fd9da575dadeac96446098730..c9d2dd415c6725a2a55f1f2e3c493a2342490c5c 100644 (file)
@@ -25,12 +25,12 @@ typedef bitset * bitsetv;
 
 /* Create a vector of N_VECS bitsets, each of N_BITS, and of
    type TYPE.  */
-extern bitsetv bitsetv_alloc PARAMS ((unsigned int, unsigned int,
+extern bitsetv bitsetv_alloc PARAMS ((bitset_bindex, bitset_bindex,
                                      enum bitset_type));
 
 /* Create a vector of N_VECS bitsets, each of N_BITS, and with
    attribute hints specified by ATTR.  */
-extern bitsetv bitsetv_create PARAMS ((unsigned int, unsigned int,
+extern bitsetv bitsetv_create PARAMS ((bitset_bindex, bitset_bindex,
                                       unsigned int));
 
 /* Free vector of bitsets.  */
@@ -42,7 +42,21 @@ extern void bitsetv_zero PARAMS ((bitsetv));
 /* Set vector of bitsets.  */
 extern void bitsetv_ones PARAMS ((bitsetv));
 
+/* Given a vector BSETV of N bitsets of size N, modify its contents to
+   be the transitive closure of what was given.  */
+extern void bitsetv_transitive_closure PARAMS ((bitsetv));
+
+/* Given a vector BSETV of N bitsets of size N, modify its contents to
+   be the reflexive transitive closure of what was given.  This is
+   the same as transitive closure but with all bits on the diagonal
+   of the bit matrix set.  */
+extern void bitsetv_reflexive_transitive_closure PARAMS ((bitsetv));
+
 /* Dump vector of bitsets.  */
 extern void bitsetv_dump PARAMS ((FILE *, const char *,
                                  const char *, bitsetv));
+
+/* Function to debug vector of bitsets from debugger.  */
+extern void debug_bitsetv PARAMS ((bitsetv));
+
 #endif  /* _BITSETV_H  */