Reference

ACE_DLList(3)

A double-linked list container class.

NAME

ACE_DLList - A double-linked list container class.

SYNOPSIS

#include <ace/Containers.h>
template<class T>
class ACE_DLList : public ACE_DLList_Base
{
  public:
    friend class ACE_DLList_Node;
    friend class ACE_Double_Linked_List_Iterator<T>;
    friend class ACE_DLList_Iterator<T>;
    friend class ACE_DLList_Reverse_Iterator<T>;
    void operator= (ACE_DLList<T> &l);
    T *insert_tail (T *new_item);
    T *insert_head (T *new_item);
    T *delete_head (void);
    T *delete_tail (void);
    int get (T *&item, size_t slot = 0);
    void dump (void) const;
    int remove (ACE_DLList_Node *n);
    ACE_DLList (ACE_Allocator *alloc = 0);
    ACE_DLList (ACE_DLList<T> &l);
    ~ACE_DLList (void);
};

DESCRIPTION

This implementation uses ACE_Double_Linked_List to perform the logic behind this container class. It delegates all of its calls to ACE_Double_Linked_List.

Classic queue operations.

T *insert_tail (T *new_item);

Delegates to ACE_Double_Linked_List.

T *insert_head (T *new_item);

Delegates to ACE_Double_Linked_List.

T *delete_head (void);

Delegates to ACE_Double_Linked_List.

T *delete_tail (void);

Delegates to ACE_Double_Linked_List.

Additional utility methods.

int get (T *&item, size_t slot = 0);

Delegates to ACE_Double_Linked_List, but where ACE_Double_Linked_List returns the node as the item, this get returns the contents of the node in item.

void dump (void) const;

Delegates to ACE_Double_Linked_List.

int remove (ACE_DLList_Node *n);

Delegates to ACE_Double_Linked_List.

Initialization and termination methods.

ACE_DLList (ACE_Allocator *alloc = 0);

Delegates to ACE_Double_Linked_List.

ACE_DLList (ACE_DLList<T> &l);

Delegates to ACE_Double_Linked_List.

~ACE_DLList (void);

Deletes the list starting from the head.

AUTHOR

Doug Schmidt

Initialization and termination methods.

Check boundary conditions.

Classic unordered set operations.

LIBRARY

ace