61 lines
1.8 KiB
Plaintext
61 lines
1.8 KiB
Plaintext
[section boost_python_list.hpp]
|
|
[section Introduction]
|
|
Exposes a [link concepts.objectwrapper.typewrapper_concept_requirements TypeWrapper] for the Python [@http://www.python.org/doc/current/lib/typesseq-mutable.html list] type.
|
|
[endsect]
|
|
[section Class `list`]
|
|
Exposes the [@http://www.python.org/doc/current/lib/typesseq-mutable.html mapping protocol] of Python's built-in `list` type. The semantics of the constructors and member functions defined below can be fully understood by reading the [link concepts.objectwrapper.typewrapper_concept_requirements TypeWrapper] concept definition. Since `list` is publicly derived from [link object_wrappers.boost_python_object_hpp.class_object `object`], the public `object` interface applies to `list` instances as well.``
|
|
namespace boost { namespace python
|
|
{
|
|
class list : public object
|
|
{
|
|
public:
|
|
list(); // new list
|
|
|
|
template <class T>
|
|
explicit list(T const& sequence);
|
|
|
|
template <class T>
|
|
void append(T const& x);
|
|
|
|
template <class T>
|
|
long count(T const& value) const;
|
|
|
|
template <class T>
|
|
void extend(T const& x);
|
|
|
|
template <class T>
|
|
long index(T const& x) const;
|
|
|
|
template <class T>
|
|
void insert(object const& index, T const& x); // insert object before index
|
|
|
|
object pop(); // remove and return item at index (default last)
|
|
object pop(long index);
|
|
object pop(object const& index);
|
|
|
|
template <class T>
|
|
void remove(T const& value);
|
|
|
|
void reverse(); // reverse *IN PLACE*
|
|
|
|
void sort(); // sort *IN PLACE*; if given, cmpfunc(x, y) -> -1, 0, 1
|
|
|
|
template <class T>
|
|
void sort(T const& value);
|
|
};
|
|
}}
|
|
``
|
|
[endsect]
|
|
[section Example]
|
|
``
|
|
using namespace boost::python;
|
|
|
|
// Return the number of zeroes in the list
|
|
long zeroes(list l)
|
|
{
|
|
return l.count(0);
|
|
}
|
|
``
|
|
[endsect]
|
|
[endsect]
|