BDE 4.14.0 Production release
Loading...
Searching...
No Matches
bslstl::HashTable_NodeProctor< FACTORY > Class Template Reference

#include <bslstl_hashtable.h>

Public Member Functions

 HashTable_NodeProctor (FACTORY *factory, bslalg::BidirectionalLink *node)
 
 ~HashTable_NodeProctor ()
 
void release ()
 

Detailed Description

template<class FACTORY>
class bslstl::HashTable_NodeProctor< FACTORY >

This class implements a proctor that, unless its release method has previously been invoked, automatically deallocates a managed list of nodes upon destruction by recursively invoking the deleteNode method of a supplied factory on each node. The (template parameter) type FACTORY shall be provide a member function that can be called as if it had the following signature:

void deleteNode(bslalg::BidirectionalLink *node);

See bslstl_hashtable

Constructor & Destructor Documentation

◆ HashTable_NodeProctor()

template<class FACTORY >
bslstl::HashTable_NodeProctor< FACTORY >::HashTable_NodeProctor ( FACTORY *  factory,
bslalg::BidirectionalLink node 
)
inline

Create a new node-proctor that conditionally manages the specified node (if non-zero), and that uses the specified factory to destroy the node (unless released) upon its destruction. The behavior is undefined unless node was created by the factory.

◆ ~HashTable_NodeProctor()

template<class FACTORY >
bslstl::HashTable_NodeProctor< FACTORY >::~HashTable_NodeProctor ( )
inline

Destroy this node proctor, and delete the node that it manages (if any) by invoking the deleteNode method of the factory supplied at construction. If no node is currently being managed, this method has no effect.

Member Function Documentation

◆ release()

template<class FACTORY >
void bslstl::HashTable_NodeProctor< FACTORY >::release ( )
inline

Release from management the node currently managed by this proctor. If no object is currently being managed, this method has no effect.


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