16 #include <math/Arithmetic.hpp> 17 #include <metaprogramming/TypeTraits.hpp> 18 #include <metaprogramming/SFINAE.hpp> 19 #include <metaprogramming/UniversalReferences.hpp> 20 #include <utility/ScopeDoer.hpp> 46 const UnsignedSize unsignedSize=
47 std::vector<T>::size();
51 static_cast<Size>(unsignedSize);
61 template <
typename Arg,
135 template <
typename F>
147 template <
bool Ret=
true>
196 template <
typename C>
205 template <
typename C>
278 os<<
","<<(*
this)[
iEl];
309 template <
typename TOut>
329 template <
bool FirstSecond,
338 out.reserve(m.size());
341 if constexpr(FirstSecond==
true)
342 out.push_back(it.second);
344 out.push_back(it.first);
351 template <
typename T1,
356 getAllFirstOrSecond<
false>(m);
360 template <
typename T1,
365 getAllFirstOrSecond<
true>(m);
Vector< TOut > getAllFirstOrSecond(const std::map< T1, T2 > &m)
Gets first or second entry of the map.
auto getAllKeys(const std::map< T1, T2 > &m)
Slice all keys of a map.
void divWithMod(Vector< TOut > "ient, Vector< TOut > &remainder, const Vector &divisor) const
Returns the result and remainder of the division.
auto getAllVal(const std::map< T1, T2 > &m)
Slice all values of a map.
#define SFINAE_ON_TEMPLATE_ARG(...)
Size size() const
Returns the signed size.
Vector(const Vector &oth)
Copy constructor.