Wire Sysio Wire Sysion 1.0.0
Loading...
Searching...
No Matches
chainbase::undo_index< T, Allocator, Indices >::removed_nodes_tracker Class Reference

#include <undo_index.hpp>

Public Member Functions

 removed_nodes_tracker (undo_index &idx)
 
 ~removed_nodes_tracker ()
 
 removed_nodes_tracker (const removed_nodes_tracker &)=delete
 
removed_nodes_trackeroperator= (const removed_nodes_tracker &)=delete
 
bool is_removed (const value_type &obj) const
 
void remove (const value_type &obj)
 

Friends

class undo_index
 

Detailed Description

template<typename T, typename Allocator, typename... Indices>
class chainbase::undo_index< T, Allocator, Indices >::removed_nodes_tracker

Definition at line 402 of file undo_index.hpp.

Constructor & Destructor Documentation

◆ removed_nodes_tracker() [1/2]

template<typename T , typename Allocator , typename... Indices>
chainbase::undo_index< T, Allocator, Indices >::removed_nodes_tracker::removed_nodes_tracker ( undo_index & idx)
inlineexplicit

Definition at line 404 of file undo_index.hpp.

404: _self(&idx) {}

◆ ~removed_nodes_tracker()

template<typename T , typename Allocator , typename... Indices>
chainbase::undo_index< T, Allocator, Indices >::removed_nodes_tracker::~removed_nodes_tracker ( )
inline

Definition at line 405 of file undo_index.hpp.

405 {
406 _removed_values.clear_and_dispose([this](value_type* obj) { _self->dispose_node(*obj); });
407 }

◆ removed_nodes_tracker() [2/2]

template<typename T , typename Allocator , typename... Indices>
chainbase::undo_index< T, Allocator, Indices >::removed_nodes_tracker::removed_nodes_tracker ( const removed_nodes_tracker & )
delete

Member Function Documentation

◆ is_removed()

template<typename T , typename Allocator , typename... Indices>
bool chainbase::undo_index< T, Allocator, Indices >::removed_nodes_tracker::is_removed ( const value_type & obj) const
inline

Definition at line 410 of file undo_index.hpp.

410 {
411 return undo_index::get_removed_field(obj) == erased_flag;
412 }
static constexpr int erased_flag

◆ operator=()

template<typename T , typename Allocator , typename... Indices>
removed_nodes_tracker & chainbase::undo_index< T, Allocator, Indices >::removed_nodes_tracker::operator= ( const removed_nodes_tracker & )
delete

◆ remove()

template<typename T , typename Allocator , typename... Indices>
void chainbase::undo_index< T, Allocator, Indices >::removed_nodes_tracker::remove ( const value_type & obj)
inline

Definition at line 414 of file undo_index.hpp.

414 {
415 _self->remove(obj, *this);
416 }
void remove(const value_type &obj) noexcept
Here is the call graph for this function:

Friends And Related Symbol Documentation

◆ undo_index

template<typename T , typename Allocator , typename... Indices>
friend class undo_index
friend

Definition at line 418 of file undo_index.hpp.


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