28 #ifndef BSL_CONSTRUCT_AT_HPP 29 #define BSL_CONSTRUCT_AT_HPP 78 template<
typename T,
typename... ARGS>
81 noexcept(noexcept(
new (ptr) T{bsl::declval<ARGS>()...}))
106 template<
typename T,
typename... ARGS>
109 noexcept(noexcept(std::construct_at_impl<T, ARGS...>(ptr, bsl::declval<ARGS>()...)))
111 std::construct_at_impl<T, ARGS...>(ptr, bsl::forward<ARGS>(args)...);
129 template<
typename T,
typename... ARGS>
constexpr void discard(ARGS &&... args) noexcept
This function discards a parameter that it is given. This is the same as executing a static cast....
Definition: discard.hpp:58
constexpr void construct_at_impl(void *const ptr, ARGS &&... args) noexcept(noexcept(new(ptr) T{bsl::declval< ARGS >()...}))
Implements a constexpr version of placement new. that can be used by BSL's APIs to support constexpr ...
Definition: construct_at.hpp:80
constexpr void construct_at(void *const ptr, ARGS &&... args) noexcept(noexcept(std::construct_at_impl< T, ARGS... >(ptr, bsl::declval< ARGS >()...)))
Implements a constexpr version of placement new. that can be used by BSL's APIs to support constexpr ...
Definition: construct_at.hpp:108
::uintmax_t uintmax
defines a unsigned integer with the maximum possible size
Definition: cstdint.hpp:97