#include <indexing_suite_detail.hpp>
 | 
| static object  | base_get_slice (Container &container, PySliceObject *slice) | 
|   | 
| static void  | base_get_slice_data (Container &container, PySliceObject *slice, Index &from_, Index &to_) | 
|   | 
| static void  | base_set_slice (Container &container, PySliceObject *slice, PyObject *v) | 
|   | 
| static void  | base_delete_slice (Container &container, PySliceObject *slice) | 
|   | 
| static object  | base_get_slice (Container &container, PySliceObject *slice) | 
|   | 
| static void  | base_get_slice_data (Container &container, PySliceObject *slice, Index &from_, Index &to_) | 
|   | 
| static void  | base_set_slice (Container &container, PySliceObject *slice, PyObject *v) | 
|   | 
| static void  | base_delete_slice (Container &container, PySliceObject *slice) | 
|   | 
template<class Container, class DerivedPolicies, class ProxyHandler, class Data, class Index>
struct boost::python::detail::slice_helper< Container, DerivedPolicies, ProxyHandler, Data, Index >
Definition at line 577 of file indexing_suite_detail.hpp.
 
template<class Container , class DerivedPolicies , class ProxyHandler , class Data , class Index > 
 
Definition at line 692 of file indexing_suite_detail.hpp.
  696             ProxyHandler::base_erase_indexes(container, from, to);
 
  697             DerivedPolicies::delete_slice(container, from, to);
 
static void base_get_slice_data(Container &container, PySliceObject *slice, Index &from_, Index &to_)
 
 
 
 
template<class Container , class DerivedPolicies , class ProxyHandler , class Data , class Index > 
 
Definition at line 692 of file indexing_suite_detail.hpp.
  696             ProxyHandler::base_erase_indexes(container, from, to);
 
  697             DerivedPolicies::delete_slice(container, from, to);
 
static void base_get_slice_data(Container &container, PySliceObject *slice, Index &from_, Index &to_)
 
 
 
 
template<class Container , class DerivedPolicies , class ProxyHandler , class Data , class Index > 
 
Definition at line 580 of file indexing_suite_detail.hpp.
  584             return DerivedPolicies::get_slice(container, from, to);
 
static void base_get_slice_data(Container &container, PySliceObject *slice, Index &from_, Index &to_)
 
 
 
 
template<class Container , class DerivedPolicies , class ProxyHandler , class Data , class Index > 
 
Definition at line 580 of file indexing_suite_detail.hpp.
  584             return DerivedPolicies::get_slice(container, from, to);
 
static void base_get_slice_data(Container &container, PySliceObject *slice, Index &from_, Index &to_)
 
 
 
 
template<class Container , class DerivedPolicies , class ProxyHandler , class Data , class Index > 
  
  
      
        
          | static void boost::python::detail::slice_helper< Container, DerivedPolicies, ProxyHandler, Data, Index >::base_get_slice_data  | 
          ( | 
          Container &  | 
          container,  | 
         
        
           | 
           | 
          PySliceObject *  | 
          slice,  | 
         
        
           | 
           | 
          Index &  | 
          from_,  | 
         
        
           | 
           | 
          Index &  | 
          to_  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Definition at line 588 of file indexing_suite_detail.hpp.
  591             if (Py_None != slice->step) {
 
  592                 PyErr_SetString( PyExc_IndexError, 
"slice step size not supported.");
 
  593                 throw_error_already_set();
 
  596             Index min_index = DerivedPolicies::get_min_index(container);
 
  597             Index max_index = DerivedPolicies::get_max_index(container);
 
  599             if (Py_None == slice->start) {
 
  603                 long from = extract<long>( slice->start);
 
  608                 from_ = boost::numeric_cast<Index>(from);
 
  609                 if (from_ > max_index) 
 
  613             if (Py_None == slice->stop) {
 
  617                 long to = extract<long>( slice->stop);
 
  622                 to_ = boost::numeric_cast<Index>(to);
 
 
 
 
template<class Container , class DerivedPolicies , class ProxyHandler , class Data , class Index > 
  
  
      
        
          | static void boost::python::detail::slice_helper< Container, DerivedPolicies, ProxyHandler, Data, Index >::base_get_slice_data  | 
          ( | 
          Container &  | 
          container,  | 
         
        
           | 
           | 
          PySliceObject *  | 
          slice,  | 
         
        
           | 
           | 
          Index &  | 
          from_,  | 
         
        
           | 
           | 
          Index &  | 
          to_  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Definition at line 588 of file indexing_suite_detail.hpp.
  591             if (Py_None != slice->step) {
 
  592                 PyErr_SetString( PyExc_IndexError, 
"slice step size not supported.");
 
  593                 throw_error_already_set();
 
  596             Index min_index = DerivedPolicies::get_min_index(container);
 
  597             Index max_index = DerivedPolicies::get_max_index(container);
 
  599             if (Py_None == slice->start) {
 
  603                 long from = extract<long>( slice->start);
 
  608                 from_ = boost::numeric_cast<Index>(from);
 
  609                 if (from_ > max_index) 
 
  613             if (Py_None == slice->stop) {
 
  617                 long to = extract<long>( slice->stop);
 
  622                 to_ = boost::numeric_cast<Index>(to);
 
 
 
 
template<class Container , class DerivedPolicies , class ProxyHandler , class Data , class Index > 
 
Definition at line 629 of file indexing_suite_detail.hpp.
  634             extract<Data&> elem(
v);
 
  638                 ProxyHandler::base_replace_indexes(container, from, to, 1);
 
  639                 DerivedPolicies::set_slice(container, from, to, elem());
 
  644                 extract<Data> elem(
v);
 
  647                     ProxyHandler::base_replace_indexes(container, from, to, 1);
 
  648                     DerivedPolicies::set_slice(container, from, to, elem());
 
  653                     handle<> l_(python::borrowed(
v));
 
  656                     std::vector<Data> temp;
 
  657                     for (
int i = 0; i < l.attr(
"__len__")(); i++)
 
  660                         extract<Data const&> 
x(elem);
 
  669                             extract<Data> 
x(elem);
 
  676                                 PyErr_SetString(PyExc_TypeError, 
 
  677                                     "Invalid sequence element");
 
  678                                 throw_error_already_set();
 
  683                     ProxyHandler::base_replace_indexes(container, from, to, 
 
  684                         temp.end()-temp.begin());
 
  685                     DerivedPolicies::set_slice(container, from, to, 
 
  686                         temp.begin(), temp.end());
 
static void base_get_slice_data(Container &container, PySliceObject *slice, Index &from_, Index &to_)
 
 
 
 
template<class Container , class DerivedPolicies , class ProxyHandler , class Data , class Index > 
 
Definition at line 629 of file indexing_suite_detail.hpp.
  634             extract<Data&> elem(
v);
 
  638                 ProxyHandler::base_replace_indexes(container, from, to, 1);
 
  639                 DerivedPolicies::set_slice(container, from, to, elem());
 
  644                 extract<Data> elem(
v);
 
  647                     ProxyHandler::base_replace_indexes(container, from, to, 1);
 
  648                     DerivedPolicies::set_slice(container, from, to, elem());
 
  653                     handle<> l_(python::borrowed(
v));
 
  656                     std::vector<Data> temp;
 
  657                     for (
int i = 0; i < l.attr(
"__len__")(); i++)
 
  660                         extract<Data const&> 
x(elem);
 
  669                             extract<Data> 
x(elem);
 
  676                                 PyErr_SetString(PyExc_TypeError, 
 
  677                                     "Invalid sequence element");
 
  678                                 throw_error_already_set();
 
  683                     ProxyHandler::base_replace_indexes(container, from, to, 
 
  684                         temp.end()-temp.begin());
 
  685                     DerivedPolicies::set_slice(container, from, to, 
 
  686                         temp.begin(), temp.end());
 
static void base_get_slice_data(Container &container, PySliceObject *slice, Index &from_, Index &to_)
 
 
 
 
The documentation for this struct was generated from the following files: