5#ifndef INCLUDE_GUARD_ARENE_BASE_ARENE_BASE_INTRUSIVE_SINGLY_LINKED_NODE_HPP_
6#define INCLUDE_GUARD_ARENE_BASE_ARENE_BASE_INTRUSIVE_SINGLY_LINKED_NODE_HPP_
8#include "arene/base/intrusive/detail/default_tag.hpp"
18template <
typename T,
typename Tag>
24class singly_linked_node_pass_key {
26 constexpr explicit singly_linked_node_pass_key() =
default;
33 template <
typename T,
typename Tag>
54 constexpr auto is_linked()
const noexcept ->
bool {
return next_ !=
nullptr; }
Intrusive queue implementation.
Definition queue.hpp:33
Singly linked hook. User type can be derived from this class to support intrusive containers.
Definition singly_linked_node.hpp:45
friend constexpr auto get_next_link(singly_linked_node &element, Tag, detail::singly_linked_node_pass_key) noexcept -> singly_linked_node *&
Getter to the next_ member. singly_linked_node_pass_key idiom is used to grant access only to the int...
Definition singly_linked_node.hpp:67
constexpr auto is_linked() const noexcept -> bool
Check if the element is linked to a container.
Definition singly_linked_node.hpp:54
Definition binary_tree_node.hpp:14
Definition array_exceptions_disabled.cpp:11
Copyright 2026, Toyota Motor Corporation.
Definition array_exceptions_disabled.cpp:10