Michele De Stefano's C++ Utilities
|
Wraps a generic Python sequence. More...
#include <mds_utils/python/sequence.hpp>
Public Member Functions | |
Sequence () | |
The default constructor. | |
Sequence (PyObject *po) | |
Constructs a new Sequence from a Python sequence. More... | |
Sequence (const Sequence &rhs) | |
The copy constructor. | |
Sequence (Sequence &&rhs) | |
The move constructor. | |
Sequence (ProxyAttr &&rhs) | |
The move constructor from ProxyAttr objects. | |
Sequence & | operator= (Sequence &&rhs) |
The move assignment. | |
Sequence & | operator= (const Sequence &rhs) |
The standard assignment. | |
Public Member Functions inherited from mds_utils::python::Sequence_Base< Sequence > | |
Sequence_Base () | |
Default constructor. More... | |
Sequence_Base (size_t len) | |
Creates a sequence of the desired length. More... | |
Sequence_Base (PyObject *po) | |
Constructs a new Sequence_Base from a Python sequence. More... | |
Sequence_Base (Sequence_Base &&rhs) | |
Move constructor. | |
Sequence_Base (const Sequence_Base &rhs) | |
The copy-constructor. | |
Sequence_Base (ProxyAttr &&rhs) | |
Move constructor from ProxyAttr object. More... | |
Sequence_Base< Sequence > & | operator= (Sequence_Base< Sequence > &&rhs) |
Move assignment. | |
Sequence_Base< Sequence > & | operator= (const Sequence_Base< Sequence > &rhs) |
The standard assignment. | |
void | set (const seq_T &seq) |
Sets a Python sequence from a Boost Fusion sequence. More... | |
void | set (FwIt b, FwIt e) |
Sets a Python sequence from a range of values. More... | |
void | set (const Obj &o) |
Sets a Python sequence from another Python sequence. More... | |
void | del (long i) |
Deletes the item in position i . | |
size_t | len () const |
Returns the length of the sequence. | |
ProxyElem | operator[] (long i) |
Element access. More... | |
Public Member Functions inherited from mds_utils::python::Obj | |
Obj () | |
Default constructor. | |
Obj (const Obj &rhs) | |
The copy-constructor. More... | |
Obj (Obj &&rhs) | |
Move constructor. More... | |
Obj (ProxyAttr &&rhs) | |
Move constructor from ProxyAttr objects. More... | |
Obj (PyObject *po) | |
Construct from a Python object. More... | |
Obj & | operator= (const Obj &rhs) |
Standard assignment. | |
Obj & | operator= (Obj &&rhs) |
Move assignment. | |
virtual Obj & | operator= (PyObject *po) |
Assignment from a Python object. More... | |
template<class T > | |
Obj & | operator= (const T &val) |
Assignment from a value. More... | |
virtual | ~Obj () |
Destructor. | |
PyObject * | getPyObject () const |
Returns the underlying PyObject. More... | |
operator PyObject * () const | |
Automatic type conversion towards a Python object. More... | |
virtual PyObject * | transfer () |
Returns the Python object with transferred ownership. More... | |
virtual void | incref () |
Increments the reference count using Py_XINCREF. More... | |
virtual void | decref () |
Decrements the reference count using Py_XDECREF. | |
void | reset () |
Resets the object to the state given by the default constructor. | |
void | get_ownership () |
Used in place of incref, when the wrapped PyObject* was increfed already. | |
bool | has_attr (const std::string &name) const |
Tests if the object has a particular attribute. | |
ProxyAttr | attr (const std::string &name) |
Retrieves an attribute. More... | |
bool | is_callable () const |
Checks if the object is callable. More... | |
Obj | operator() () |
Calling operator. More... | |
Obj | operator() (const Obj &args) |
Calling operator, with positional arguments. More... | |
Obj | operator() (const Obj &args, const Obj &kw) |
Calling operator, with positional and keyword arguments. More... | |
Friends | |
class | Sequence_Base< Sequence > |
Additional Inherited Members | |
Protected Member Functions inherited from mds_utils::python::Sequence_Base< Sequence > | |
size_t | idx (long i) const |
Converts a Python index (that can also be negative) into a C index. More... | |
Protected Member Functions inherited from mds_utils::python::Obj | |
void | check_callable () |
Checks if the object is callable. More... | |
void | check_call_result (PyObject *result) |
Checks if the result of the object call was successful. More... | |
Protected Attributes inherited from mds_utils::python::Sequence_Base< Sequence > | |
size_t | m_len |
The length of the sequence. | |
Protected Attributes inherited from mds_utils::python::Obj | |
size_t | decref_on_destroy |
PyObject * | m_po |
Underlying pointer to the wrapped Python object. | |
Wraps a generic Python sequence.
static PyObject* new_seq(size_t len)
by creating a Python list.Definition at line 469 of file sequence.hpp.
|
inline |
Constructs a new Sequence from a Python sequence.
It throws an exception if the parameter is not a sequence. The new sequence is built as a Python list.
po | Pointer to a Pyton sequence object. |
Definition at line 510 of file sequence.hpp.