ilist_sentinel_traits - A fragment for template traits for intrusive list that provides default sentinel implementations for common operations. More...
#include <ilist.h>
Static Public Member Functions | |
static NodeTy * | createSentinel () |
createSentinel - create the dynamic sentinel | |
static void | destroySentinel (NodeTy *N) |
destroySentinel - deallocate the dynamic sentinel | |
static NodeTy * | provideInitialHead () |
provideInitialHead - when constructing an ilist, provide a starting value for its Head | |
static NodeTy * | ensureHead (NodeTy *&Head) |
ensureHead - make sure that Head is either already initialized or assigned a fresh sentinel | |
static void | noteHead (NodeTy *NewHead, NodeTy *Sentinel) |
noteHead - stash the sentinel into its default location |
ilist_sentinel_traits - A fragment for template traits for intrusive list that provides default sentinel implementations for common operations.
ilist_sentinel_traits implements a lazy dynamic sentinel allocation strategy. The sentinel is stored in the prev field of ilist's Head.
static NodeTy* llvm::ilist_sentinel_traits< NodeTy >::createSentinel | ( | ) | [inline, static] |
createSentinel - create the dynamic sentinel
static void llvm::ilist_sentinel_traits< NodeTy >::destroySentinel | ( | NodeTy * | N | ) | [inline, static] |
destroySentinel - deallocate the dynamic sentinel
Reimplemented in llvm::ilist_traits< RecyclerStruct >.
static NodeTy* llvm::ilist_sentinel_traits< NodeTy >::ensureHead | ( | NodeTy *& | Head | ) | [inline, static] |
ensureHead - make sure that Head is either already initialized or assigned a fresh sentinel
static void llvm::ilist_sentinel_traits< NodeTy >::noteHead | ( | NodeTy * | NewHead, | |
NodeTy * | Sentinel | |||
) | [inline, static] |
noteHead - stash the sentinel into its default location
Reimplemented in llvm::ilist_traits< RecyclerStruct >.
static NodeTy* llvm::ilist_sentinel_traits< NodeTy >::provideInitialHead | ( | ) | [inline, static] |
provideInitialHead - when constructing an ilist, provide a starting value for its Head