μHAL (v2.8.17)
Part of the IPbus software repository
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | List of all members
tuple Class Reference

#include </builds/ipbus/ipbus-software/uhal/python/pybind11-python2/include/pybind11/pytypes.h>

Inheritance diagram for tuple:
[legend]
Collaboration diagram for tuple:
[legend]

Public Member Functions

template<typename SzType = ssize_t, detail::enable_if_t< std::is_integral< SzType >::value, int > = 0>
 tuple (SzType size=0)
 
size_t size () const
 
bool empty () const
 
detail::tuple_accessor operator[] (size_t index) const
 
detail::item_accessor operator[] (handle h) const
 
detail::tuple_iterator begin () const
 
detail::tuple_iterator end () const
 
template<typename SzType = ssize_t, detail::enable_if_t< std::is_integral< SzType >::value, int > = 0>
 tuple (SzType size=0)
 
size_t size () const
 
bool empty () const
 
detail::tuple_accessor operator[] (size_t index) const
 
template<typename T , detail::enable_if_t< detail::is_pyobject< T >::value, int > = 0>
detail::item_accessor operator[] (T &&o) const
 
detail::tuple_iterator begin () const
 
detail::tuple_iterator end () const
 
- Public Member Functions inherited from object
 object ()=default
 
 PYBIND11_DEPRECATED ("Use reinterpret_borrow<object>() or reinterpret_steal<object>()") object(handle h
 
 object (const object &o)
 Copy constructor; always increases the reference count. More...
 
 object (object &&other) noexcept
 Move constructor; steals the object from other and preserves its reference count. More...
 
 ~object ()
 Destructor; automatically calls handle::dec_ref() More...
 
handle release ()
 \rst Resets the internal pointer to nullptr without decreasing the object's reference count. More...
 
objectoperator= (const object &other)
 
objectoperator= (object &&other) noexcept
 
template<typename T >
cast () const &
 
template<typename T >
cast () &&
 
 object (handle h, borrowed_t)
 
 object (handle h, stolen_t)
 
 object ()=default
 
 PYBIND11_DEPRECATED ("Use reinterpret_borrow<object>() or reinterpret_steal<object>()") object(handle h
 
 object (const object &o)
 Copy constructor; always increases the reference count. More...
 
 object (object &&other) noexcept
 Move constructor; steals the object from other and preserves its reference count. More...
 
 ~object ()
 Destructor; automatically calls handle::dec_ref() More...
 
handle release ()
 \rst Resets the internal pointer to nullptr without decreasing the object's reference count. More...
 
objectoperator= (const object &other)
 
objectoperator= (object &&other) noexcept
 
template<typename T >
cast () const &
 
template<typename T >
cast () &&
 
 object (handle h, borrowed_t)
 
 object (handle h, stolen_t)
 
template<typename T >
cast () const &
 
template<typename T >
cast () &&
 
template<>
void cast () const &
 
template<>
void cast () &&
 
- Public Member Functions inherited from handle
 handle ()=default
 The default constructor creates a handle with a nullptr-valued pointer. More...
 
 handle (PyObject *ptr)
 Creates a handle from the given raw Python object pointer. More...
 
PyObject * ptr () const
 Return the underlying PyObject * pointer. More...
 
PyObject *& ptr ()
 
const handleinc_ref () const &
 \rst Manually increase the reference count of the Python object. More...
 
const handledec_ref () const &
 \rst Manually decrease the reference count of the Python object. More...
 
template<typename T >
cast () const
 \rst Attempt to cast the Python object into the given C++ type. More...
 
 operator bool () const
 Return true when the handle wraps a valid Python object. More...
 
bool operator== (const handle &h) const
 \rst Deprecated: Check that the underlying pointers are the same. More...
 
bool operator!= (const handle &h) const
 
bool check () const
 
 handle ()=default
 The default constructor creates a handle with a nullptr-valued pointer. More...
 
template<typename T , detail::enable_if_t< detail::is_pyobj_ptr_or_nullptr_t< T >::value, int > = 0>
 handle (T ptr)
 Enable implicit conversion from PyObject * and nullptr. More...
 
template<typename T , detail::enable_if_t< detail::all_of< detail::none_of< std::is_base_of< handle, T >, detail::is_pyobj_ptr_or_nullptr_t< T > >, std::is_convertible< T, PyObject * > >::value, int > = 0>
 handle (T &obj)
 Enable implicit conversion through T::operator PyObject *(). More...
 
PyObject * ptr () const
 Return the underlying PyObject * pointer. More...
 
PyObject *& ptr ()
 
const handleinc_ref () const &
 \rst Manually increase the reference count of the Python object. More...
 
const handledec_ref () const &
 \rst Manually decrease the reference count of the Python object. More...
 
template<typename T >
cast () const
 \rst Attempt to cast the Python object into the given C++ type. More...
 
 operator bool () const
 Return true when the handle wraps a valid Python object. More...
 
bool operator== (const handle &h) const
 \rst Deprecated: Check that the underlying pointers are the same. More...
 
bool operator!= (const handle &h) const
 
bool check () const
 
template<>
void cast () const
 

Additional Inherited Members

- Static Public Member Functions inherited from handle
static std::size_t inc_ref_counter ()
 
- Public Attributes inherited from object
bool is_borrowed: handle(h) { if (is_borrowed) { inc_ref()
 
- Protected Attributes inherited from handle
PyObject * m_ptr = nullptr
 

Detailed Description

Definition at line 1667 of file pytypes.h.

Constructor & Destructor Documentation

◆ tuple() [1/2]

template<typename SzType = ssize_t, detail::enable_if_t< std::is_integral< SzType >::value, int > = 0>
tuple::tuple ( SzType  size = 0)
inlineexplicit

Definition at line 1673 of file pytypes.h.

References handle::m_ptr, and pybind11_fail().

◆ tuple() [2/2]

template<typename SzType = ssize_t, detail::enable_if_t< std::is_integral< SzType >::value, int > = 0>
tuple::tuple ( SzType  size = 0)
inlineexplicit

Definition at line 1971 of file pytypes.h.

References handle::m_ptr, and pybind11_fail().

Member Function Documentation

◆ begin() [1/2]

detail::tuple_iterator tuple::begin ( ) const
inline

Definition at line 1682 of file pytypes.h.

◆ begin() [2/2]

detail::tuple_iterator tuple::begin ( ) const
inline

Definition at line 1983 of file pytypes.h.

◆ empty() [1/2]

bool tuple::empty ( ) const
inline

Definition at line 1679 of file pytypes.h.

References size().

◆ empty() [2/2]

bool tuple::empty ( ) const
inline

Definition at line 1977 of file pytypes.h.

References size().

◆ end() [1/2]

detail::tuple_iterator tuple::end ( ) const
inline

Definition at line 1683 of file pytypes.h.

References handle::m_ptr.

◆ end() [2/2]

detail::tuple_iterator tuple::end ( ) const
inline

Definition at line 1984 of file pytypes.h.

References handle::m_ptr.

◆ operator[]() [1/4]

detail::item_accessor tuple::operator[] ( handle  h) const
inline

Definition at line 1681 of file pytypes.h.

◆ operator[]() [2/4]

detail::tuple_accessor tuple::operator[] ( size_t  index) const
inline

Definition at line 1680 of file pytypes.h.

◆ operator[]() [3/4]

detail::tuple_accessor tuple::operator[] ( size_t  index) const
inline

Definition at line 1978 of file pytypes.h.

◆ operator[]() [4/4]

template<typename T , detail::enable_if_t< detail::is_pyobject< T >::value, int > = 0>
detail::item_accessor tuple::operator[] ( T &&  o) const
inline

Definition at line 1980 of file pytypes.h.

◆ size() [1/2]

size_t tuple::size ( ) const
inline

Definition at line 1678 of file pytypes.h.

References handle::m_ptr.

Referenced by empty(), cpp_function::initialize_generic(), make_tuple(), and print().

◆ size() [2/2]

size_t tuple::size ( ) const
inline

Definition at line 1976 of file pytypes.h.

References handle::m_ptr.


The documentation for this class was generated from the following files: