HepMC3 event record library
Public Member Functions | Data Fields | Protected Attributes | Static Private Member Functions
dict Class Reference
+ Inheritance diagram for dict:
+ Collaboration diagram for dict:

Public Member Functions

template<typename... Args, typename = detail::enable_if_t<detail::all_of<detail::is_keyword_or_ds<Args>...>::value>, typename collector = detail::deferred_t<detail::unpacking_collector<>, Args...>>
 dict (Args &&...args)
 
size_t size () const
 
bool empty () const
 
detail::dict_iterator begin () const
 
detail::dict_iterator end () const
 
void clear () const
 
template<typename T >
bool contains (T &&key) const
 
 PYBIND11_DEPRECATED ("Use reinterpret_borrow<object>() or reinterpret_steal<object>()") object(handle h
 
handle release ()
 
template<typename T >
cast () const &
 
template<typename T >
cast () &&
 
template<typename T >
cast () const &
 
template<typename T >
cast () &&
 
template<>
void cast () const &
 
template<>
void cast () &&
 
template<typename T >
cast () const
 
PyObject * ptr () const
 Return the underlying PyObject * pointer. More...
 
PyObject *& ptr ()
 
const handleinc_ref () const &
 
const handledec_ref () const &
 
 operator bool () const
 Return true when the handle wraps a valid Python object. More...
 
bool operator== (const handle &h) const
 
bool operator!= (const handle &h) const
 
bool check () const
 

Data Fields

bool is_borrowed: handle(h) { if (is_borrowed) inc_ref()
 

Protected Attributes

PyObject * m_ptr = nullptr
 

Static Private Member Functions

static PyObject * raw_dict (PyObject *op)
 Call the dict Python type – always returns a new reference. More...
 

Detailed Description

Definition at line 1274 of file pytypes.h.

Member Function Documentation

◆ cast()

T cast ( ) const
inherited

Attempt to cast the Python object into the given C++ type. A cast_error will be throw upon failure.

Definition at line 1743 of file cast.h.

◆ dec_ref()

const handle& dec_ref ( ) const &
inlineinherited

Manually decrease the reference count of the Python object. Usually, it is preferable to use the object class which derives from handle and calls this function automatically. Returns a reference to itself.

Definition at line 199 of file pytypes.h.

◆ inc_ref()

const handle& inc_ref ( ) const &
inlineinherited

Manually increase the reference count of the Python object. Usually, it is preferable to use the object class which derives from handle and calls this function automatically. Returns a reference to itself.

Definition at line 192 of file pytypes.h.

◆ operator bool()

operator bool ( ) const
inlineexplicitinherited

Return true when the handle wraps a valid Python object.

Definition at line 207 of file pytypes.h.

◆ operator==()

bool operator== ( const handle h) const
inlineinherited

Deprecated: Check that the underlying pointers are the same. Equivalent to obj1 is obj2 in Python.

Definition at line 213 of file pytypes.h.

◆ ptr()

PyObject* ptr ( ) const
inlineinherited

Return the underlying PyObject * pointer.

Definition at line 184 of file pytypes.h.

◆ raw_dict()

static PyObject* raw_dict ( PyObject *  op)
inlinestaticprivate

Call the dict Python type – always returns a new reference.

Definition at line 1297 of file pytypes.h.

References handle::handle().

◆ release()

handle release ( )
inlineinherited

Resets the internal pointer to nullptr without decreasing the object's reference count. The function returns a raw handle to the original Python object.

Definition at line 249 of file pytypes.h.

References handle::handle().


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