Skip to content

synodriver/pybitset

Repository files navigation

✨ pybitset ✨

The python binding for cbitset

pypi python implementation wheel license action

install

pip install pybitset

Usage

from pybitset import BitSet

b= BitSet()
for i in range(1000):
    b.set(3*i)

for v in b:
    print(v)
  • use BITSET_USE_CFFI env var to specify a backend

Public functions

class BitSet:
    def __init__(self) -> None: ...
    def __del__(self) -> None: ...
    @staticmethod
    def from_ptr(ptr) -> BitSet: ...
    def clear(self) -> None: ...
    def fill(self) -> None: ...
    def copy(self) -> BitSet: ...
    def resize(self, newarraysize: int, padwithzeroes: bool) -> bool: ...
    def size_in_bytes(self) -> int: ...
    def size_in_bits(self) -> int: ...
    def size_in_words(self) -> int: ...
    def grow(self, newarraysize: int) -> bool: ...
    def trim(self) -> bool: ...
    def shift_left(self, s: int) -> None: ...
    def shift_right(self, s: int) -> None: ...
    def set(self, i: int) -> None: ...
    def set_to_value(self, i: int, flag: bool) -> None: ...
    def get(self, i: int) -> bool: ...
    def count(self) -> int: ...
    def minimum(self) -> int: ...
    def maximum(self) -> int: ...
    def inplace_union(self, b2: BitSet) -> bool: ...
    def union_count(self, b2: BitSet) -> int: ...
    def inplace_intersection(self, b2: BitSet): ...
    def intersection_count(self, b2: BitSet) -> int: ...
    def disjoint(self, b2: BitSet) -> bool: ...
    def intersect(self, b2: BitSet) -> bool: ...
    def contains_all(self, b2: BitSet) -> bool: ...
    def inplace_difference(self, b2: BitSet) -> None: ...
    def difference_count(self, b2: BitSet) -> int: ...
    def inplace_symmetric_difference(self, b2: BitSet) -> bool: ...
    def symmetric_difference_count(self, b2: BitSet) -> int: ...
    def __iter__(self): ...
    def for_each(self, func) -> bool: ...
    def print(self) -> None: ...

About

python binding for bitset

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published