mCRL2
Loading...
Searching...
No Matches
mcrl2::utilities::detail::free_list< Element >::slot Union Reference

The nodes of the free list without. More...

#include <free_list.h>

Public Member Functions

 slot ()
 
 ~slot ()
 
slotnext () const noexcept
 
bool has_next () const noexcept
 
void next (slot *next) noexcept
 Set the next pointer to the given next pointer.
 
Element & element () noexcept
 
 operator Element & ()
 
void mark ()
 Mark this slot with a special value, destroys the slot.
 
bool is_marked () const noexcept
 

Protected Attributes

slotm_next = nullptr
 Pointer to the next node.
 
Element m_element
 Store the actual element.
 

Detailed Description

template<typename Element>
union mcrl2::utilities::detail::free_list< Element >::slot

The nodes of the free list without.

Definition at line 39 of file free_list.h.

Constructor & Destructor Documentation

◆ slot()

template<typename Element >
mcrl2::utilities::detail::free_list< Element >::slot::slot ( )
inline

Definition at line 42 of file free_list.h.

◆ ~slot()

template<typename Element >
mcrl2::utilities::detail::free_list< Element >::slot::~slot ( )
inline

Definition at line 43 of file free_list.h.

Member Function Documentation

◆ element()

template<typename Element >
Element & mcrl2::utilities::detail::free_list< Element >::slot::element ( )
inlinenoexcept
Returns
A reference to the key stored in this node.

Definition at line 55 of file free_list.h.

◆ has_next()

template<typename Element >
bool mcrl2::utilities::detail::free_list< Element >::slot::has_next ( ) const
inlinenoexcept
Returns
True if and only there is a next bucket in the linked list.

Definition at line 49 of file free_list.h.

◆ is_marked()

template<typename Element >
bool mcrl2::utilities::detail::free_list< Element >::slot::is_marked ( ) const
inlinenoexcept
Returns
True if and only if this slot is marked.

Definition at line 64 of file free_list.h.

◆ mark()

template<typename Element >
void mcrl2::utilities::detail::free_list< Element >::slot::mark ( )
inline

Mark this slot with a special value, destroys the slot.

Definition at line 61 of file free_list.h.

◆ next() [1/2]

template<typename Element >
slot * mcrl2::utilities::detail::free_list< Element >::slot::next ( ) const
inlinenoexcept
Returns
The next bucket in the linked list.

Definition at line 46 of file free_list.h.

◆ next() [2/2]

template<typename Element >
void mcrl2::utilities::detail::free_list< Element >::slot::next ( slot next)
inlinenoexcept

Set the next pointer to the given next pointer.

Definition at line 52 of file free_list.h.

◆ operator Element &()

template<typename Element >
mcrl2::utilities::detail::free_list< Element >::slot::operator Element & ( )
inline
Returns
An implicit conversion to the underlying key.

Definition at line 58 of file free_list.h.

Member Data Documentation

◆ m_element

template<typename Element >
Element mcrl2::utilities::detail::free_list< Element >::slot::m_element
protected

Store the actual element.

Definition at line 71 of file free_list.h.

◆ m_next

template<typename Element >
slot* mcrl2::utilities::detail::free_list< Element >::slot::m_next = nullptr
protected

Pointer to the next node.

Definition at line 68 of file free_list.h.


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