reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
233 if (Idx == SMSNode::INVALID) 236 assert(Idx < SMS->Dense.size() && "Out of range, non-INVALID Idx?"); 243 unsigned Prev() const { return SMS->Dense[Idx].Prev; } 244 unsigned Next() const { return SMS->Dense[Idx].Next; } 246 void setPrev(unsigned P) { SMS->Dense[Idx].Prev = P; } 247 void setNext(unsigned N) { SMS->Dense[Idx].Next = N; } 257 assert(isKeyed() && SMS->sparseIndex(SMS->Dense[Idx].Data) == SparseIdx && 260 return SMS->Dense[Idx].Data; 267 if (SMS == RHS.SMS && Idx == RHS.Idx) { 267 if (SMS == RHS.SMS && Idx == RHS.Idx) { 283 assert((isEnd() || !SMS->isHead(SMS->Dense[Idx])) && 288 Idx = SMS->findIndex(SparseIdx).Prev(); 290 Idx = Prev(); 296 Idx = Next(); 381 return const_iterator(I.SMS, I.Idx, KeyIndexOf(Key)); 433 unsigned HeadIdx = I.Idx; 467 assert(I.isKeyed() && !I.isEnd() && !Dense[I.Idx].isTombstone() && 472 iterator NextI = unlink(Dense[I.Idx]); 475 makeTombstone(I.Idx);