| from libcpp cimport bool | |
| cdef extern from "<optional>" namespace "std" nogil: | |
| cdef cppclass nullopt_t: | |
| nullopt_t() | |
| cdef nullopt_t nullopt | |
| cdef cppclass optional[T]: | |
| ctypedef T value_type | |
| optional() | |
| optional(nullopt_t) | |
| optional(optional | |
| optional(T | |
| bool has_value() | |
| T | |
| T | |
| void swap(optional | |
| void reset() | |
| T | |
| T | |
| optional | |
| optional | |
| bool operator bool() | |
| bool operator!() | |
| bool operator==[U](optional | |
| bool operator!=[U](optional | |
| bool operator<[U](optional | |
| bool operator>[U](optional | |
| bool operator<=[U](optional | |
| bool operator>=[U](optional | |
| optional[T] make_optional[T](...) except + | |