diff options
Diffstat (limited to 'AppPkg/Applications/Python/Python-2.7.10/Include/bitset.h')
-rw-r--r-- | AppPkg/Applications/Python/Python-2.7.10/Include/bitset.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/AppPkg/Applications/Python/Python-2.7.10/Include/bitset.h b/AppPkg/Applications/Python/Python-2.7.10/Include/bitset.h new file mode 100644 index 0000000000..028acdf042 --- /dev/null +++ b/AppPkg/Applications/Python/Python-2.7.10/Include/bitset.h @@ -0,0 +1,32 @@ +
+#ifndef Py_BITSET_H
+#define Py_BITSET_H
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Bitset interface */
+
+#define BYTE char
+
+typedef BYTE *bitset;
+
+bitset newbitset(int nbits);
+void delbitset(bitset bs);
+#define testbit(ss, ibit) (((ss)[BIT2BYTE(ibit)] & BIT2MASK(ibit)) != 0)
+int addbit(bitset bs, int ibit); /* Returns 0 if already set */
+int samebitset(bitset bs1, bitset bs2, int nbits);
+void mergebitset(bitset bs1, bitset bs2, int nbits);
+
+#define BITSPERBYTE (8*sizeof(BYTE))
+#define NBYTES(nbits) (((nbits) + BITSPERBYTE - 1) / BITSPERBYTE)
+
+#define BIT2BYTE(ibit) ((ibit) / BITSPERBYTE)
+#define BIT2SHIFT(ibit) ((ibit) % BITSPERBYTE)
+#define BIT2MASK(ibit) (1 << BIT2SHIFT(ibit))
+#define BYTE2BIT(ibyte) ((ibyte) * BITSPERBYTE)
+
+#ifdef __cplusplus
+}
+#endif
+#endif /* !Py_BITSET_H */
|