aboutsummaryrefslogtreecommitdiffstats
path: root/util/generic/hash_set.pxd
blob: d28d90cbe77c244cd0d9112b1002f209fbbd978e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
from libcpp.pair cimport pair

cdef extern from "util/generic/hash_set.h" nogil:
    cdef cppclass THashSet[T]:
        cppclass iterator:
            T& operator*()
            iterator operator++()
            iterator operator--()
            bint operator==(iterator)
            bint operator!=(iterator)

        cppclass const_iterator(iterator):
            pass

        THashSet() except +
        THashSet(THashSet&) except +
        THashSet(T* t) except +
        THashSet& operator=(THashSet&)

        bint operator==(THashSet&)
        bint operator!=(THashSet&)
        bint operator<(THashSet&)
        bint operator>(THashSet&)
        bint operator<=(THashSet&)
        bint operator>=(THashSet&)

        iterator begin()
        const_iterator const_begin "begin"()
        void clear()
        size_t count(T&)
        bint empty()
        iterator end()
        const_iterator const_end "end"()
        void erase(iterator) except +
        void erase(iterator, iterator) except +
        size_t erase(T&)
        iterator find(T&)
        bint contains(T&)
        const_iterator const_find "find"(T&)
        pair[iterator, bint] insert(T)
        iterator insert(iterator, T)
        size_t size()
        void swap(THashSet&)