Lines Matching defs:EndIdx
133 /// Every leaf node must have its \p EndIdx incremented at the end of every
137 unsigned *EndIdx = nullptr;
181 assert(*EndIdx != EmptyIdx && "EndIdx is undefined!");
185 return *EndIdx - StartIdx + 1;
188 SuffixTreeNode(unsigned StartIdx, unsigned *EndIdx, SuffixTreeNode *Link)
189 : StartIdx(StartIdx), EndIdx(EndIdx), Link(Link) {}
292 /// \param EndIdx The end index of this node's associated string.
297 unsigned EndIdx, unsigned Edge) {
299 assert(StartIdx <= EndIdx && "String can't start after it ends!");
303 unsigned *E = new (InternalEndIdxAllocator) unsigned(EndIdx);
342 /// \p EndIdx.
349 /// \param EndIdx The end index of the current prefix in the main string.
355 unsigned extend(unsigned EndIdx, unsigned SuffixesToAdd) {
363 Active.Idx = EndIdx;
366 assert(Active.Idx <= EndIdx && "Start index can't be after end index!");
374 insertLeaf(*Active.Node, EndIdx, FirstChar);
402 unsigned LastChar = Str[EndIdx];
438 insertLeaf(*SplitNode, EndIdx, LastChar);
459 Active.Idx = EndIdx - SuffixesToAdd + 1;
1025 unsigned EndIdx = StartIdx + StringLen - 1;
1049 [&StartIdx, &EndIdx](const Candidate &C) {
1050 return (EndIdx < C.getStartIdx() || StartIdx > C.getEndIdx());
1057 MachineBasicBlock::iterator EndIt = Mapper.InstrList[EndIdx];