コード例 #1
0
ファイル: List.hpp プロジェクト: SuperV1234/SSVUtils
 inline static constexpr SizeT getIdxOf()
 {
     SSVU_ASSERT_STATIC_NM(has<T>());
     return Impl::IdxOf<T, Ts...>{};
 }
コード例 #2
0
ファイル: Aliases.hpp プロジェクト: sonyomega/SSVUtils
	/// @brief Returns a `const TBase*` casted to `const T*`. Asserts that `T` is derived from `TBase`.
	template<typename T, typename TBase> inline const T* castUp(const TBase* mBase) noexcept { SSVU_ASSERT_STATIC_NM(isSameOrBaseOf<TBase, T>()); return static_cast<const T*>(mBase); }
コード例 #3
0
ファイル: Aliases.hpp プロジェクト: lukeadams/SSVUtils
 inline constexpr decltype(auto) mv(T&& mX) noexcept
 {
     SSVU_ASSERT_STATIC_NM(!isConst<RmRef<T>>());
     return std::move(mX);
 }
コード例 #4
0
ファイル: Aliases.hpp プロジェクト: sonyomega/SSVUtils
	/// @brief Returns a `TBase&` casted to `T&`. Asserts that `T` is derived from `TBase`.
	template<typename T, typename TBase> inline T& castUp(TBase& mBase) noexcept { SSVU_ASSERT_STATIC_NM(isSameOrBaseOf<TBase, T>()); return static_cast<T&>(mBase); }