Commit c83e0622 by Tomasz Miąsko

Create an empty python tuple in pybind::tuple default constructor.

Follow the same semantics as constructors of dict, list, and set by
creating valid Python object in default constructor of a tuple class.
parent dd57a34e
...@@ -372,8 +372,8 @@ public: ...@@ -372,8 +372,8 @@ public:
class tuple : public object { class tuple : public object {
public: public:
PYBIND11_OBJECT_DEFAULT(tuple, object, PyTuple_Check) PYBIND11_OBJECT(tuple, object, PyTuple_Check)
tuple(size_t size) : object(PyTuple_New((Py_ssize_t) size), false) { } tuple(size_t size = 0) : object(PyTuple_New((Py_ssize_t) size), false) { }
size_t size() const { return (size_t) PyTuple_Size(m_ptr); } size_t size() const { return (size_t) PyTuple_Size(m_ptr); }
detail::tuple_accessor operator[](size_t index) { return detail::tuple_accessor(ptr(), index); } detail::tuple_accessor operator[](size_t index) { return detail::tuple_accessor(ptr(), index); }
}; };
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment