private PyObject trySlice(String name, PyObject start, PyObject stop) { return trySlice(name, start, stop, null); }
@ExposedMethod final PyObject instance___getslice__(PyObject start, PyObject stop, PyObject step) { if (step != null) { return __getitem__(new PySlice(start, stop, step)); } PyObject ret = trySlice("__getslice__", start, stop); if (ret != null) { return ret; } return super.__getslice__(start, stop, step); }
@ExposedMethod final void instance___delslice__(PyObject start, PyObject stop, PyObject step) { if (step != null) { __delitem__(new PySlice(start, stop, step)); } else if (trySlice("__delslice__", start, stop) == null) { super.__delslice__(start, stop, step); } }
@ExposedMethod final void instance___setslice__(PyObject start, PyObject stop, PyObject step, PyObject value) { if (step != null) { __setitem__(new PySlice(start, stop, step), value); } else if (trySlice("__setslice__", start, stop, value) == null) { super.__setslice__(start, stop, step, value); } }