28 #ifndef BSL_IS_NOTHROW_DESTRUCTIBLE_HPP 29 #define BSL_IS_NOTHROW_DESTRUCTIBLE_HPP 92 [[nodiscard]] constexpr
bool 121 public bool_constant<details::check_is_nothrow_destructible<T>()>
If the provided type is a reference type (taking into account const qualifications),...
Definition: is_reference.hpp:48
If the provided type is a void type (taking into account const qualifications), provides the member c...
Definition: is_void.hpp:48
If the provided type is an array type (taking into account const qualifications), provides the member...
Definition: integral_constant.hpp:45
auto destructor_is_marked_nothrow(bsl::int32 ignored) noexcept -> bool_constant< noexcept(bsl::declval< T & >().~T())>
Tests if a destructor is marked noexcept or not. It does this by creating a function that returns tru...
If the provided type is a function type, provides the member constant value equal to true....
Definition: is_function.hpp:49
constexpr bool check_is_nothrow_destructible() noexcept
Checks if a type "T" is destructible and if so, returns true, otherwise returns false.
Definition: is_nothrow_destructible.hpp:93
typename remove_all_extents< T >::type remove_all_extents_t
a helper that reduces the verbosity of bsl::remove_all_extents
Definition: remove_all_extents.hpp:54
::int32_t int32
defines an 32bit signed integer
Definition: cstdint.hpp:40
If the provided type is an unbounded array, provides the member constant value equal to true....
Definition: is_unbounded_array.hpp:49
typename details::detector< nonesuch, void, Op, Args... >::value_t is_detected
The alias template is_detected is equivalent to typename detected_or<bsl::nonesuch,...
Definition: is_detected.hpp:42
decltype(bsl::declval< T & >().~T()) is_nothrow_destructible_type
used to detect the presence of a destructor in T
Definition: is_nothrow_destructible.hpp:49
If the provided type is nothrow destructible, provides the member constant value equal to true....
Definition: is_nothrow_destructible.hpp:120