Defines the requirements for a struct to be translatable. More...
#include <eve/traits/translation.hpp>
| T | The translation candidate type |
T must satisfy this concept in order to be safely used as a translatable type. T and its translation target must have the same size and alignment. T must be trivially copyable, and assignable to guarantee that scalar operations produce the same results as vectorized operations executed on values of T when observed as their translation targets.
T is not required to be trivially constructible, a constructor of T initializing it with anything other than its default value, or having side-effects can lead to undefined or unexpected behavior when used in vectorized operations. This also applies to the overload of any operator of T that is also available for its translation target.