Home | History | Annotate | Download | only in ADT

Lines Matching refs:Prev

81   /// circular in Prev indices, and INVALID-terminated in Next indices. This
89 unsigned Prev;
92 SMSNode(ValueT D, unsigned P, unsigned N) : Data(D), Prev(P), Next(N) { }
101 return Prev == INVALID;
104 /// Since the list is circular in Prev, all non-tombstone nodes have a valid
105 /// Prev.
106 bool isValid() const { return Prev != INVALID; }
140 return Dense[D.Prev].isTail();
148 return &Dense[N.Prev] == &N;
153 unsigned addValue(const ValueT& V, unsigned Prev, unsigned Next) {
155 Dense.push_back(SMSNode(V, Prev, Next));
164 Dense[Idx] = SMSNode(V, Prev, Next);
172 Dense[Idx].Prev = SMSNode::INVALID;
235 unsigned Prev() const { return SMS->Dense[Idx].Prev; }
238 void setPrev(unsigned P) { SMS->Dense[Idx].Prev = P; }
290 Idx = SMS->findIndex(SparseIdx).Prev();
292 Idx = Prev();
408 I = iterator(this, I.Prev(), KeyIndexOf(Key));
432 Dense[NodeIdx].Prev = NodeIdx;
438 unsigned TailIdx = I.Prev();
440 Dense[HeadIdx].Prev = NodeIdx;
441 Dense[NodeIdx].Prev = TailIdx;
503 Dense[N.Next].Prev = N.Prev;
509 findIndex(sparseIndex(N)).setPrev(N.Prev);
510 Dense[N.Prev].Next = N.Next;
513 iterator I(this, N.Prev, ValIndexOf(N.Data));
518 Dense[N.Next].Prev = N.Prev;
519 Dense[N.Prev].Next = N.Next;