[#BloombergLP-bslstl-HashTable_NodeProctor] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslstl.adoc[bslstl]::HashTable_NodeProctor :relfileprefix: ../../ :mrdocs: Proctor that deletes a managed node unless `release` is called. == Synopsis Declared in `<bslstl_hashtable.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class FACTORY> class HashTable_NodeProctor; ---- == Description 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); ` == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslstl/HashTable_NodeProctor/2constructor.adoc[`HashTable_NodeProctor`] [.small]#[constructor]# | Create a proctor that conditionally manages `node`. | xref:BloombergLP/bslstl/HashTable_NodeProctor/2destructor.adoc[`~HashTable_NodeProctor`] [.small]#[destructor]# | Destroy this proctor and delete any managed node. | xref:BloombergLP/bslstl/HashTable_NodeProctor/release.adoc[`release`] | Release from management the node currently managed by this proctor. If no object is currently being managed, this method has no effect. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#