diff --git a/include/hpcombi/perm16.hpp b/include/hpcombi/perm16.hpp index 5b74b239..d8fc99e4 100644 --- a/include/hpcombi/perm16.hpp +++ b/include/hpcombi/perm16.hpp @@ -47,19 +47,13 @@ struct alignas(16) PTransf16 : public Vect16 { using array = typename decltype(Epu8)::array; PTransf16() = default; - constexpr PTransf16(const PTransf16 &v) = default; + constexpr PTransf16(const vect v) : Vect16(v) {} constexpr PTransf16(const epu8 x) : Vect16(x) {} PTransf16(std::vector dom, std::vector rng, size_t = 0 /* unused */); PTransf16(std::initializer_list il); - PTransf16 &operator=(const PTransf16 &) = default; - PTransf16 &operator=(const epu8 &vv) { - v = vv; - return *this; - } - //! Return whether \c *this is a well constructed object bool validate(size_t k = 16) const { return HPCombi::is_partial_transformation(v, k); diff --git a/include/hpcombi/vect16.hpp b/include/hpcombi/vect16.hpp index 49c3e760..5ea4702d 100644 --- a/include/hpcombi/vect16.hpp +++ b/include/hpcombi/vect16.hpp @@ -33,19 +33,11 @@ struct alignas(16) Vect16 { epu8 v; Vect16() = default; - constexpr Vect16(const Vect16 &v) = default; - constexpr Vect16(epu8 x) : v(x) {} Vect16(std::initializer_list il, uint8_t def = 0) : v(Epu8(il, def)) {} constexpr operator epu8() const { return v; } - Vect16 &operator=(const Vect16 &) = default; - Vect16 &operator=(const epu8 &vv) { - v = vv; - return *this; - } - array &as_array() { return HPCombi::as_array(v); } const array &as_array() const { return HPCombi::as_array(v); } diff --git a/include/hpcombi/vect_generic.hpp b/include/hpcombi/vect_generic.hpp index 5e1e1558..2ba82a75 100644 --- a/include/hpcombi/vect_generic.hpp +++ b/include/hpcombi/vect_generic.hpp @@ -47,21 +47,14 @@ template struct VectGeneric { array v; VectGeneric() = default; - constexpr VectGeneric(const VectGeneric &v) = default; - VectGeneric(const std::array &_v) : v(_v) {} // NOLINT + VectGeneric(const array &_v) : v(_v) {} // NOLINT VectGeneric(std::initializer_list il, Expo def = 0) { HPCOMBI_ASSERT(il.size() <= Size); std::copy(il.begin(), il.end(), v.begin()); std::fill(v.begin() + il.size(), v.end(), def); } - VectGeneric &operator=(const VectGeneric &) = default; - VectGeneric &operator=(const array &vv) { - v = vv; - return *this; - } - Expo operator[](uint64_t i) const { return v[i]; } Expo &operator[](uint64_t i) { return v[i]; }