Spaces:
Build error
Build error
File size: 3,600 Bytes
f07f089 |
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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 |
from libcpp cimport bool, nullptr_t, nullptr
cdef extern from "<memory>" namespace "std" nogil:
cdef cppclass default_delete[T]:
default_delete()
cdef cppclass allocator[T]:
allocator()
allocator(const allocator &)
#allocator(const allocator[U] &) #unique_ptr unit tests fail w/this
T * address(T &)
const T * address(const T &) const
T * allocate( size_t n ) # Not to standard. should be a second default argument
void deallocate(T * , size_t)
size_t max_size() const
void construct( T *, const T &) #C++98. The C++11 version is variadic AND perfect-forwarding
void destroy(T *) #C++98
void destroy[U](U *) #unique_ptr unit tests fail w/this
cdef cppclass unique_ptr[T,DELETER=*]:
unique_ptr()
unique_ptr(nullptr_t)
unique_ptr(T*)
unique_ptr(unique_ptr[T]&)
# Modifiers
T* release()
void reset()
void reset(nullptr_t)
void reset(T*)
void swap(unique_ptr&)
# Observers
T* get()
T& operator*()
#T* operator->() # Not Supported
bool operator bool()
bool operator!()
bool operator==(const unique_ptr&)
bool operator!=(const unique_ptr&)
bool operator<(const unique_ptr&)
bool operator>(const unique_ptr&)
bool operator<=(const unique_ptr&)
bool operator>=(const unique_ptr&)
bool operator==(nullptr_t)
bool operator!=(nullptr_t)
# Forward Declaration not working ("Compiler crash in AnalyseDeclarationsTransform")
#cdef cppclass weak_ptr[T]
cdef cppclass shared_ptr[T]:
shared_ptr()
shared_ptr(nullptr_t)
shared_ptr(T*)
shared_ptr(shared_ptr[T]&)
shared_ptr(shared_ptr[T]&, T*)
shared_ptr(unique_ptr[T]&)
#shared_ptr(weak_ptr[T]&) # Not Supported
# Modifiers
void reset()
void reset(T*)
void swap(shared_ptr&)
# Observers
T* get()
T& operator*()
#T* operator->() # Not Supported
long use_count()
bool unique()
bool operator bool()
bool operator!()
#bool owner_before[Y](const weak_ptr[Y]&) # Not Supported
bool owner_before[Y](const shared_ptr[Y]&)
bool operator==(const shared_ptr&)
bool operator!=(const shared_ptr&)
bool operator<(const shared_ptr&)
bool operator>(const shared_ptr&)
bool operator<=(const shared_ptr&)
bool operator>=(const shared_ptr&)
bool operator==(nullptr_t)
bool operator!=(nullptr_t)
cdef cppclass weak_ptr[T]:
weak_ptr()
weak_ptr(weak_ptr[T]&)
weak_ptr(shared_ptr[T]&)
# Modifiers
void reset()
void swap(weak_ptr&)
# Observers
long use_count()
bool expired()
shared_ptr[T] lock()
bool owner_before[Y](const weak_ptr[Y]&)
bool owner_before[Y](const shared_ptr[Y]&)
# Smart pointer non-member operations
shared_ptr[T] make_shared[T](...) except +
# Temporaries used for exception handling break generated code
unique_ptr[T] make_unique[T](...) # except +
# No checking on the compatibility of T and U.
cdef shared_ptr[T] static_pointer_cast[T, U](const shared_ptr[U]&)
cdef shared_ptr[T] dynamic_pointer_cast[T, U](const shared_ptr[U]&)
cdef shared_ptr[T] const_pointer_cast[T, U](const shared_ptr[U]&)
cdef shared_ptr[T] reinterpret_pointer_cast[T, U](const shared_ptr[U]&)
|