56 static_cast<Node*
>(next_)->prev_ = prev_;
59 static_cast<Root*
>(root_)->last_ = prev_;
62 static_cast<Node*
>(prev_)->next_ = next_;
64 static_cast<Root*
>(root_)->first_ = next_;
79 Node& mynode =
static_cast<Node&
>(node);
80 if (mynode.root_ ==
this) {
95 if (node != 0)
remove(*node);
105 Node& mynode =
static_cast<Node&
>(node);
107 if (mynode.root_ != 0) mynode.remove();
109 mynode.root_ =
static_cast<R*
>(
this);
114 mynode.next_ = first_;
126 if (node != 0) addFirst(*node);
138 Node& mynode =
static_cast<Node&
>(node);
140 if (mynode.root_ != 0) mynode.remove();
147 mynode.prev_ = last_;
148 static_cast<Node*
>(last_)->next_ = &node;
152 mynode.root_ =
static_cast<R*
>(
this);
164 if (node != 0) addLast(*node);
190 if (node != 0) add(*node);
199 static_cast<Root&
>(
root).addFirst(*static_cast<N*>(
this));
210 static_cast<Root*
>(
root)->addFirst(*static_cast<N*>(
this));
222 static_cast<Root&
>(
root).addLast(*static_cast<N*>(
this));
234 static_cast<Root*
>(
root)->addLast(*static_cast<N*>(
this));
248 Node &mynode =
static_cast<Node&
>(node);
249 N* me =
static_cast<N*
>(
this);
250 if (mynode.root_ && &node != me) {
252 root_ = mynode.root_;
253 next_ = mynode.next_;
257 static_cast<Node*
>(next_)->prev_ = me;
259 static_cast<Root*
>(root_)->last_ = me;
314 while (first_)
remove(first_);
327 if (root)
addTo(root);
~DListInNode()
Definition: DListIn.hpp:348
void addTo(R &root)
Definition: DListIn.hpp:283
DListInRoot()
Definition: DListIn.hpp:303
DListInNode(R *root=0)
Definition: DListIn.hpp:322
void addFirst(N &node)
Definition: DListIn.hpp:104
void remove(N &node)
Definition: DListIn.hpp:78
void add(N &node)
Definition: DListIn.hpp:176
void addLast(N &node)
Definition: DListIn.hpp:137
void addAfter(N &node)
Definition: DListIn.hpp:247
R * root() const
Return pointer to list we are on.
Definition: DListIn.h:177
Intrusive Double Linked List.
void addToEnd(R &root)
Definition: DListIn.hpp:221
~DListInRoot()
Definition: DListIn.hpp:313
void remove()
Definition: DListIn.hpp:53
void addToFront(R &root)
Definition: DListIn.hpp:198