some new features
This commit is contained in:
@ -0,0 +1,165 @@
|
||||
cdef extern from "<deque>" namespace "std" nogil:
|
||||
cdef cppclass deque[T,ALLOCATOR=*]:
|
||||
ctypedef T value_type
|
||||
ctypedef ALLOCATOR allocator_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--()
|
||||
iterator operator++(int)
|
||||
iterator operator--(int)
|
||||
iterator operator+(size_type)
|
||||
iterator operator-(size_type)
|
||||
difference_type operator-(iterator)
|
||||
difference_type operator-(const_iterator)
|
||||
bint operator==(iterator)
|
||||
bint operator==(const_iterator)
|
||||
bint operator!=(iterator)
|
||||
bint operator!=(const_iterator)
|
||||
bint operator<(iterator)
|
||||
bint operator<(const_iterator)
|
||||
bint operator>(iterator)
|
||||
bint operator>(const_iterator)
|
||||
bint operator<=(iterator)
|
||||
bint operator<=(const_iterator)
|
||||
bint operator>=(iterator)
|
||||
bint operator>=(const_iterator)
|
||||
cppclass const_iterator:
|
||||
const_iterator() except +
|
||||
const_iterator(iterator&) except +
|
||||
const_iterator(const_iterator&) except +
|
||||
operator=(iterator&) except +
|
||||
const value_type& operator*()
|
||||
const_iterator operator++()
|
||||
const_iterator operator--()
|
||||
const_iterator operator++(int)
|
||||
const_iterator operator--(int)
|
||||
const_iterator operator+(size_type)
|
||||
const_iterator operator-(size_type)
|
||||
difference_type operator-(iterator)
|
||||
difference_type operator-(const_iterator)
|
||||
bint operator==(iterator)
|
||||
bint operator==(const_iterator)
|
||||
bint operator!=(iterator)
|
||||
bint operator!=(const_iterator)
|
||||
bint operator<(iterator)
|
||||
bint operator<(const_iterator)
|
||||
bint operator>(iterator)
|
||||
bint operator>(const_iterator)
|
||||
bint operator<=(iterator)
|
||||
bint operator<=(const_iterator)
|
||||
bint operator>=(iterator)
|
||||
bint operator>=(const_iterator)
|
||||
|
||||
cppclass const_reverse_iterator
|
||||
cppclass reverse_iterator:
|
||||
reverse_iterator() except +
|
||||
reverse_iterator(reverse_iterator&) except +
|
||||
value_type& operator*()
|
||||
reverse_iterator operator++()
|
||||
reverse_iterator operator--()
|
||||
reverse_iterator operator++(int)
|
||||
reverse_iterator operator--(int)
|
||||
reverse_iterator operator+(size_type)
|
||||
reverse_iterator operator-(size_type)
|
||||
difference_type operator-(iterator)
|
||||
difference_type operator-(const_iterator)
|
||||
bint operator==(reverse_iterator)
|
||||
bint operator==(const_reverse_iterator)
|
||||
bint operator!=(reverse_iterator)
|
||||
bint operator!=(const_reverse_iterator)
|
||||
bint operator<(reverse_iterator)
|
||||
bint operator<(const_reverse_iterator)
|
||||
bint operator>(reverse_iterator)
|
||||
bint operator>(const_reverse_iterator)
|
||||
bint operator<=(reverse_iterator)
|
||||
bint operator<=(const_reverse_iterator)
|
||||
bint operator>=(reverse_iterator)
|
||||
bint operator>=(const_reverse_iterator)
|
||||
cppclass const_reverse_iterator:
|
||||
const_reverse_iterator() except +
|
||||
const_reverse_iterator(reverse_iterator&) except +
|
||||
operator=(reverse_iterator&) except +
|
||||
const value_type& operator*()
|
||||
const_reverse_iterator operator++()
|
||||
const_reverse_iterator operator--()
|
||||
const_reverse_iterator operator++(int)
|
||||
const_reverse_iterator operator--(int)
|
||||
const_reverse_iterator operator+(size_type)
|
||||
const_reverse_iterator operator-(size_type)
|
||||
difference_type operator-(iterator)
|
||||
difference_type operator-(const_iterator)
|
||||
bint operator==(reverse_iterator)
|
||||
bint operator==(const_reverse_iterator)
|
||||
bint operator!=(reverse_iterator)
|
||||
bint operator!=(const_reverse_iterator)
|
||||
bint operator<(reverse_iterator)
|
||||
bint operator<(const_reverse_iterator)
|
||||
bint operator>(reverse_iterator)
|
||||
bint operator>(const_reverse_iterator)
|
||||
bint operator<=(reverse_iterator)
|
||||
bint operator<=(const_reverse_iterator)
|
||||
bint operator>=(reverse_iterator)
|
||||
bint operator>=(const_reverse_iterator)
|
||||
|
||||
deque() except +
|
||||
deque(deque&) except +
|
||||
deque(size_t) except +
|
||||
deque(size_t, T&) except +
|
||||
#deque[InputIt](InputIt, InputIt)
|
||||
T& operator[](size_t)
|
||||
#deque& operator=(deque&)
|
||||
bint operator==(deque&, deque&)
|
||||
bint operator!=(deque&, deque&)
|
||||
bint operator<(deque&, deque&)
|
||||
bint operator>(deque&, deque&)
|
||||
bint operator<=(deque&, deque&)
|
||||
bint operator>=(deque&, deque&)
|
||||
void assign(size_t, T&) except +
|
||||
void assign[InputIt](InputIt, InputIt) except +
|
||||
T& at(size_t) except +
|
||||
T& back()
|
||||
iterator begin()
|
||||
const_iterator const_begin "begin"()
|
||||
const_iterator cbegin()
|
||||
void clear()
|
||||
bint empty()
|
||||
iterator end()
|
||||
const_iterator const_end "end"()
|
||||
const_iterator cend()
|
||||
iterator erase(iterator) except +
|
||||
iterator erase(iterator, iterator) except +
|
||||
T& front()
|
||||
iterator insert(iterator, T&) except +
|
||||
void insert(iterator, size_t, T&) except +
|
||||
void insert[InputIt](iterator, InputIt, InputIt) except +
|
||||
size_t max_size()
|
||||
void pop_back()
|
||||
void pop_front()
|
||||
void push_back(T&) except +
|
||||
void push_front(T&) except +
|
||||
reverse_iterator rbegin()
|
||||
#const_reverse_iterator rbegin()
|
||||
const_reverse_iterator crbegin()
|
||||
reverse_iterator rend()
|
||||
#const_reverse_iterator rend()
|
||||
const_reverse_iterator crend()
|
||||
void resize(size_t) except +
|
||||
void resize(size_t, T&) except +
|
||||
size_t size()
|
||||
void swap(deque&)
|
||||
|
||||
# C++11 methods
|
||||
void shrink_to_fit() except +
|
||||
T& emplace_front(...) except +
|
||||
T& emplace_back(...) except +
|
||||
Reference in New Issue
Block a user