summaryrefslogtreecommitdiff
path: root/Cython/Includes/libcpp/unordered_set.pxd
diff options
context:
space:
mode:
Diffstat (limited to 'Cython/Includes/libcpp/unordered_set.pxd')
-rw-r--r--Cython/Includes/libcpp/unordered_set.pxd153
1 files changed, 118 insertions, 35 deletions
diff --git a/Cython/Includes/libcpp/unordered_set.pxd b/Cython/Includes/libcpp/unordered_set.pxd
index 5aa241752..6aae890d9 100644
--- a/Cython/Includes/libcpp/unordered_set.pxd
+++ b/Cython/Includes/libcpp/unordered_set.pxd
@@ -3,67 +3,150 @@ from .utility cimport pair
cdef extern from "<unordered_set>" namespace "std" nogil:
cdef cppclass unordered_set[T,HASH=*,PRED=*,ALLOCATOR=*]:
ctypedef T value_type
+
+ # these should really be allocator_type.size_type and
+ # allocator_type.difference_type to be true to the C++ definition
+ # but cython doesn't support deferred access on template arguments
+ ctypedef size_t size_type
+ ctypedef ptrdiff_t difference_type
+
+ cppclass const_iterator
cppclass iterator:
- T& operator*()
+ iterator() except +
+ iterator(iterator&) except +
+ value_type& operator*()
iterator operator++()
iterator operator--()
+ iterator operator++(int)
+ iterator operator--(int)
bint operator==(iterator)
+ bint operator==(const_iterator)
bint operator!=(iterator)
- cppclass reverse_iterator:
- T& operator*()
- iterator operator++()
- iterator operator--()
- bint operator==(reverse_iterator)
- bint operator!=(reverse_iterator)
- cppclass const_iterator(iterator):
- pass
- cppclass const_reverse_iterator(reverse_iterator):
- pass
+ bint operator!=(const_iterator)
+ cppclass const_iterator:
+ const_iterator() except +
+ const_iterator(iterator&) except +
+ operator=(iterator&) except +
+ const value_type& operator*()
+ const_iterator operator++()
+ const_iterator operator--()
+ const_iterator operator++(int)
+ const_iterator operator--(int)
+ bint operator==(iterator)
+ bint operator==(const_iterator)
+ bint operator!=(iterator)
+ bint operator!=(const_iterator)
+
unordered_set() except +
unordered_set(unordered_set&) except +
- #unordered_set(key_compare&)
#unordered_set& operator=(unordered_set&)
bint operator==(unordered_set&, unordered_set&)
bint operator!=(unordered_set&, unordered_set&)
- bint operator<(unordered_set&, unordered_set&)
- bint operator>(unordered_set&, unordered_set&)
- bint operator<=(unordered_set&, unordered_set&)
- bint operator>=(unordered_set&, unordered_set&)
iterator begin()
const_iterator const_begin "begin"()
+ const_iterator cbegin()
void clear()
- size_t count(T&)
+ size_t count(const T&)
bint empty()
iterator end()
const_iterator const_end "end"()
- pair[iterator, iterator] equal_range(T&)
- pair[const_iterator, const_iterator] const_equal_range "equal_range"(T&)
+ const_iterator cend()
+ pair[iterator, iterator] equal_range(const T&)
+ pair[const_iterator, const_iterator] const_equal_range "equal_range"(const T&)
iterator erase(iterator)
- iterator erase(iterator, iterator)
- size_t erase(T&)
- iterator find(T&)
- const_iterator const_find "find"(T&)
- pair[iterator, bint] insert(T&)
- iterator insert(iterator, T&)
- #key_compare key_comp()
- iterator insert(iterator, iterator)
- iterator lower_bound(T&)
- const_iterator const_lower_bound "lower_bound"(T&)
+ iterator const_erase "erase"(const_iterator)
+ iterator erase(const_iterator, const_iterator)
+ size_t erase(const T&)
+ iterator find(const T&)
+ const_iterator const_find "find"(const T&)
+ pair[iterator, bint] insert(const T&) except +
+ iterator insert(const_iterator, const T&) except +
+ void insert[InputIt](InputIt, InputIt) except +
size_t max_size()
- reverse_iterator rbegin()
- const_reverse_iterator const_rbegin "rbegin"()
- reverse_iterator rend()
- const_reverse_iterator const_rend "rend"()
size_t size()
void swap(unordered_set&)
- iterator upper_bound(T&)
- const_iterator const_upper_bound "upper_bound"(T&)
#value_compare value_comp()
void max_load_factor(float)
float max_load_factor()
+ float load_factor()
+ void rehash(size_t)
+ void reserve(size_t)
+ size_t bucket_count()
+ size_t max_bucket_count()
+ size_t bucket_size(size_t)
+ size_t bucket(const T&)
+ # C++20
+ bint contains(const T&)
+
+ cdef cppclass unordered_multiset[T,HASH=*,PRED=*,ALLOCATOR=*]:
+ ctypedef T value_type
+
+ # these should really be allocator_type.size_type and
+ # allocator_type.difference_type to be true to the C++ definition
+ # but cython doesn't support deferred access on template arguments
+ ctypedef size_t size_type
+ ctypedef ptrdiff_t difference_type
+
+ cppclass const_iterator
+ cppclass iterator:
+ iterator() except +
+ iterator(iterator&) except +
+ value_type& operator*()
+ iterator operator++()
+ iterator operator++(int)
+ bint operator==(iterator)
+ bint operator==(const_iterator)
+ bint operator!=(iterator)
+ bint operator!=(const_iterator)
+ cppclass const_iterator:
+ const_iterator() except +
+ const_iterator(iterator&) except +
+ operator=(iterator&) except +
+ const value_type& operator*()
+ const_iterator operator++()
+ const_iterator operator++(int)
+ bint operator==(iterator)
+ bint operator==(const_iterator)
+ bint operator!=(iterator)
+ bint operator!=(const_iterator)
+
+ unordered_multiset() except +
+ unordered_multiset(unordered_multiset&) except +
+ #unordered_multiset& operator=(unordered_multiset&)
+ bint operator==(unordered_multiset&, unordered_multiset&)
+ bint operator!=(unordered_multiset&, unordered_multiset&)
+ iterator begin()
+ const_iterator const_begin "begin"()
+ const_iterator cbegin()
+ void clear()
+ size_t count(const T&)
+ bint empty()
+ iterator end()
+ const_iterator const_end "end"()
+ const_iterator cend()
+ pair[iterator, iterator] equal_range(const T&)
+ pair[const_iterator, const_iterator] const_equal_range "equal_range"(const T&)
+ iterator erase(iterator)
+ iterator const_erase "erase"(const_iterator)
+ iterator erase(const_iterator, const_iterator)
+ size_t erase(const T&)
+ iterator find(const T&)
+ const_iterator const_find "find"(const T&)
+ iterator insert(const T&) except +
+ iterator insert(const_iterator, const T&) except +
+ void insert[InputIt](InputIt, InputIt) except +
+ size_t max_size()
+ size_t size()
+ void swap(unordered_multiset&)
+ #value_compare value_comp()
+ void max_load_factor(float)
+ float max_load_factor()
+ float load_factor()
void rehash(size_t)
void reserve(size_t)
size_t bucket_count()
size_t max_bucket_count()
size_t bucket_size(size_t)
size_t bucket(const T&)
+ # C++20
+ bint contains(const T&)