ALib C++ Library
Library Version: 2510 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
alib::boxing::IsNotBoxable Concept Reference

Description:

A concept that is satisfied if:

  • boxing was customized for the given type and NotBoxableTag was given as mapped type, or
  • given type is a value type, no customization is given for it, while the corresponding pointer type has customized boxing with mapped type being NotBoxableTag, or
  • given type is a pointer type, no customization is given for it, while the corresponding value type has customized boxing with mapped type being NotBoxableTag.

If a type is not boxable, it can be neither boxed nor unboxed.

See also
Concepts IsCustomized, IsLocked and IsUnboxable.
Template Parameters
TThe type to check.

Definition at line 383 of file boxingtraits.inl.

Concept definition

template<typename T>
std::same_as<NotBoxableTag, typename BoxTraits<T>::Mapping>
&& ( ( !std::is_pointer_v<T>
&& std::same_as<NotBoxableTag,
|| ( std::is_pointer_v<T>
&& std::same_as<NotBoxableTag,
typename BoxTraits<std::remove_pointer_t<T>>::Mapping> ) ) )
DefaultBoxingTag Mapping