Arene Base
Fundamental Utilities For Safety Critical C++
Loading...
Searching...
No Matches
arene::base::intrusive::singly_linked_node< Tag > Class Template Reference

Singly linked hook. User type can be derived from this class to support intrusive containers. More...

Public Member Functions

constexpr auto is_linked () const noexcept -> bool
 Check if the element is linked to a container.
 

Friends

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 intrusive queue.
 

Detailed Description

template<class Tag = detail::default_tag>
class arene::base::intrusive::singly_linked_node< Tag >

Singly linked hook. User type can be derived from this class to support intrusive containers.

Template Parameters
TThe type of the element.
TagThe tag of the element. Used to support adding the same element to multiple intrusive containers.

Member Function Documentation

◆ is_linked()

template<class Tag = detail::default_tag>
auto arene::base::intrusive::singly_linked_node< Tag >::is_linked ( ) const -> bool
inlineconstexprnoexcept

Check if the element is linked to a container.

Returns
true if the element is linked to a container, false

Friends And Related Symbol Documentation

◆ get_next_link

template<class Tag = detail::default_tag>
auto get_next_link ( singly_linked_node< Tag > & element,
Tag ,
detail::singly_linked_node_pass_key  ) -> singly_linked_node*&
friend

Getter to the next_ member. singly_linked_node_pass_key idiom is used to grant access only to the intrusive queue.

Parameters
elementThe element to get the next_ member from
Returns
Reference to the next_ member

The documentation for this class was generated from the following file: