shift_right
#
Header: Kokkos_StdAlgorithms.hpp
Description#
Shifts the elements in a range or in view
by n
positions towards the end of the range or the view.
Interface#
Warning
This is currently inside the Kokkos::Experimental
namespace.
Overload set accepting execution space#
template <class ExecutionSpace, class IteratorType>
IteratorType shift_right(const ExecutionSpace& exespace, (1)
IteratorType first, IteratorType last,
typename IteratorType::difference_type n);
template <class ExecutionSpace, class IteratorType>
IteratorType shift_right(const std::string& label, (2)
const ExecutionSpace& exespace,
IteratorType first, IteratorType last,
typename IteratorType::difference_type n);
template <class ExecutionSpace, class DataType, class... Properties>
auto shift_right(const ExecutionSpace& exespace, (3)
const Kokkos::View<DataType, Properties...>& view,
typename decltype(begin(view))::difference_type n);
template <class ExecutionSpace, class DataType, class... Properties>
auto shift_right(const std::string& label, (4)
const ExecutionSpace& exespace,
const Kokkos::View<DataType, Properties...>& view,
typename decltype(begin(view))::difference_type n);
Overload set accepting a team handle#
New in version 4.2.
template <class TeamHandleType, class IteratorType>
KOKKOS_FUNCTION
IteratorType shift_right(const TeamHandleType& teamHandle, (5)
IteratorType first, IteratorType last,
typename IteratorType::difference_type n);
template <class TeamHandleType, class DataType, class... Properties>
KOKKOS_FUNCTION
auto shift_right(const TeamHandleType& teamHandle, (6)
const Kokkos::View<DataType, Properties...>& view,
typename decltype(begin(view))::difference_type n);
Parameters and Requirements#
exespace
teamHandle
,first
,last
,view
: same as inshift_left
label
: string forwarded to internal parallel kernels for debugging purposes1: The default string is “Kokkos::shift_right_iterator_api_default”
3: The default string is “Kokkos::shift_right_view_api_default”
NOTE: overloads accepting a team handle do not use a label internally
n
: the number of positions to shiftmust be non-negative
Return Value#
The beginning of the resulting range. If n
is less than last - first
, returns first + n
. Otherwise, returns last
.