fidl::internal_wavl::internal

Summary

Typedefs

node_ptr_t using
typename node_state_t< TraitClass, RefType >::PtrType
node_state_t using
std::decay_t< std::invoke_result_t< decltype(TraitClass::node_state), RefType >>

Functions

DECLARE_HAS_MEMBER_FN(has_node_state, node_state)
FIDL_INTERNAL_DECLARE_HAS_MEMBER_TYPE(has_tag_types, TagTypes)
Swap(T & a, T & b) noexcept
void
is_sentinel_ptr(const T *ptr)
constexpr bool
make_sentinel(U *ptr)
constexpr T
make_sentinel(decltype(nullptr))
constexpr T
unmake_sentinel(U *sentinel)
constexpr T
valid_sentinel_ptr(const T *ptr)
constexpr bool

Classes

fidl::internal_wavl::internal::SizeTracker< SizeOrder::Constant >
fidl::internal_wavl::internal::SizeTracker< SizeOrder::N >

Structs

fidl::internal_wavl::internal::CommonNodeStateBase
fidl::internal_wavl::internal::ContainableBaseClassEnumerator
fidl::internal_wavl::internal::ContainableBaseClassEnumerator< Containable< PtrType, Options, TagType >, Rest...>
fidl::internal_wavl::internal::ContainableBaseClassEnumerator<>
fidl::internal_wavl::internal::ContainerPtrTraits
fidl::internal_wavl::internal::ContainerPtrTraits< T * >
fidl::internal_wavl::internal::ContainerPtrTraits<::std::unique_ptr< T, Deleter > >
fidl::internal_wavl::internal::DirectEraseUtils
fidl::internal_wavl::internal::DirectEraseUtils< ContainerType, std::enable_if_t< ContainerType::SupportsConstantOrderErase==false, void > >
fidl::internal_wavl::internal::DirectEraseUtils< ContainerType, std::enable_if_t< ContainerType::SupportsConstantOrderErase==true, void > >
fidl::internal_wavl::internal::KeyEraseUtils
fidl::internal_wavl::internal::KeyEraseUtils< ContainerType, KeyTraits, std::enable_if_t< ContainerType::IsAssociative==false, void > >
fidl::internal_wavl::internal::KeyEraseUtils< ContainerType, KeyTraits, std::enable_if_t< ContainerType::IsAssociative==true, void > >

Typedefs

node_ptr_t

typename node_state_t< TraitClass, RefType >::PtrType node_ptr_t

node_state_t

std::decay_t< std::invoke_result_t< decltype(TraitClass::node_state), RefType >> node_state_t

Functions

DECLARE_HAS_MEMBER_FN

 DECLARE_HAS_MEMBER_FN(
  has_node_state,
  node_state
)

FIDL_INTERNAL_DECLARE_HAS_MEMBER_TYPE

 FIDL_INTERNAL_DECLARE_HAS_MEMBER_TYPE(
  has_tag_types,
  TagTypes
)

Swap

void Swap(
  T & a,
  T & b
) noexcept

is_sentinel_ptr

constexpr bool is_sentinel_ptr(
  const T *ptr
)

make_sentinel

constexpr T make_sentinel(
  U *ptr
)

make_sentinel

constexpr T make_sentinel(
  decltype(nullptr)
)

unmake_sentinel

constexpr T unmake_sentinel(
  U *sentinel
)

valid_sentinel_ptr

constexpr bool valid_sentinel_ptr(
  const T *ptr
)