E.V.E  0.1-beta

◆ operator[]() [3/3]

template<typename Type , typename Cardinal >
template<typename Index >
auto eve::logical< wide< Type, Cardinal > >::operator[] ( wide< Index, Cardinal > const &  idx) const
inlinenoexcept

Dynamic lookup via lane indexing.

Generate a new eve::wide which is an arbitrary shuffling of current eve::wide lanes. The values of idx must be integer between 0 and size()-1 or equal to eve::na_ to indicate the value at this lane must be replaced by zero.

Does not participate in overload resolution if idx is not an integral register.

Parameters
idxeve::wide of integral indexes
Returns
A eve::wide constructed as wide{ get(idx.get(0)), ..., get(idx.get(size()-1))}.