Lines Matching refs:LineIndex
212 unsigned BreakableStringLiteral::getRangeLength(unsigned LineIndex, in getRangeLength() argument
221 BreakableStringLiteral::getRemainingLength(unsigned LineIndex, unsigned Offset, in getRemainingLength() argument
228 unsigned BreakableStringLiteral::getContentStartColumn(unsigned LineIndex, in getContentStartColumn() argument
246 unsigned LineIndex, unsigned TailOffset, unsigned ColumnLimit, in getSplit() argument
252 void BreakableStringLiteral::insertBreak(unsigned LineIndex, in insertBreak() argument
271 BreakableComment::getSplit(unsigned LineIndex, unsigned TailOffset, in getSplit() argument
275 if (CommentPragmasRegex.match(Content[LineIndex])) in getSplit()
277 return getCommentSplit(Content[LineIndex].substr(TailOffset), in getSplit()
283 unsigned LineIndex, unsigned TailOffset, Split Split, in compressWhitespace() argument
285 StringRef Text = Content[LineIndex].substr(TailOffset); in compressWhitespace()
291 Text.data() - tokenAt(LineIndex).TokenText.data() + Split.first; in compressWhitespace()
294 tokenAt(LineIndex), BreakOffsetInToken, CharsToRemove, "", "", in compressWhitespace()
298 const FormatToken &BreakableComment::tokenAt(unsigned LineIndex) const { in tokenAt()
299 return Tokens[LineIndex] ? *Tokens[LineIndex] : Tok; in tokenAt()
457 void BreakableBlockComment::adjustWhitespace(unsigned LineIndex, in adjustWhitespace() argument
464 size_t EndOfPreviousLine = Lines[LineIndex - 1].size(); in adjustWhitespace()
465 if (InPPDirective && Lines[LineIndex - 1].endswith("\\")) in adjustWhitespace()
470 Lines[LineIndex - 1].find_last_not_of(Blanks, EndOfPreviousLine); in adjustWhitespace()
476 size_t StartOfLine = Lines[LineIndex].find_first_not_of(Blanks); in adjustWhitespace()
478 StartOfLine = Lines[LineIndex].rtrim("\r\n").size(); in adjustWhitespace()
480 StringRef Whitespace = Lines[LineIndex].substr(0, StartOfLine); in adjustWhitespace()
483 Content[LineIndex - 1].data() - Lines[LineIndex - 1].data(); in adjustWhitespace()
484 Content[LineIndex - 1] = Lines[LineIndex - 1].substr( in adjustWhitespace()
486 Content[LineIndex] = Lines[LineIndex].substr(StartOfLine); in adjustWhitespace()
489 ContentColumn[LineIndex] = in adjustWhitespace()
494 unsigned BreakableBlockComment::getRangeLength(unsigned LineIndex, in getRangeLength() argument
499 encoding::columnWidthWithTabs(Content[LineIndex].substr(Offset, Length), in getRangeLength()
504 if (LineIndex + 1 == Lines.size()) { in getRangeLength()
509 if (Content[LineIndex].substr(Offset, StringRef::npos).empty()) { in getRangeLength()
516 unsigned BreakableBlockComment::getRemainingLength(unsigned LineIndex, in getRemainingLength() argument
520 getRangeLength(LineIndex, Offset, StringRef::npos, StartColumn); in getRemainingLength()
523 unsigned BreakableBlockComment::getContentStartColumn(unsigned LineIndex, in getContentStartColumn() argument
527 return std::max(0, ContentColumn[LineIndex]); in getContentStartColumn()
536 unsigned BreakableBlockComment::getContentIndent(unsigned LineIndex) const { in getContentIndent()
543 StringRef ContentWithNoDecoration = Content[LineIndex]; in getContentIndent()
544 if (LineIndex == 0 && ContentWithNoDecoration.startswith("*")) { in getContentIndent()
555 void BreakableBlockComment::insertBreak(unsigned LineIndex, unsigned TailOffset, in insertBreak() argument
558 StringRef Text = Content[LineIndex].substr(TailOffset); in insertBreak()
564 if (LineIndex + 1 == Lines.size() && in insertBreak()
574 Text.data() - tokenAt(LineIndex).TokenText.data() + Split.first; in insertBreak()
581 tokenAt(LineIndex), BreakOffsetInToken, CharsToRemove, "", in insertBreak()
588 BreakableBlockComment::getReflowSplit(unsigned LineIndex, in getReflowSplit() argument
590 if (!mayReflow(LineIndex, CommentPragmasRegex)) in getReflowSplit()
595 size_t Trimmed = Content[LineIndex].find_first_not_of(Blanks); in getReflowSplit()
596 if (LineIndex) { in getReflowSplit()
597 unsigned PreviousContentIndent = getContentIndent(LineIndex - 1); in getReflowSplit()
612 void BreakableBlockComment::reflow(unsigned LineIndex, in reflow() argument
614 StringRef TrimmedContent = Content[LineIndex].ltrim(Blanks); in reflow()
616 assert(Tokens[LineIndex - 1] == Tokens[LineIndex] && in reflow()
620 unsigned WhitespaceOffsetInToken = Content[LineIndex - 1].data() + in reflow()
621 Content[LineIndex - 1].size() - in reflow()
622 tokenAt(LineIndex).TokenText.data(); in reflow()
624 tokenAt(LineIndex).TokenText.data() - in reflow()
627 tokenAt(LineIndex), WhitespaceOffsetInToken, in reflow()
634 unsigned LineIndex, WhitespaceManager &Whitespaces) const { in adaptStartOfLine() argument
635 if (LineIndex == 0) { in adaptStartOfLine()
643 insertBreak(LineIndex, 0, Split(1, BreakLength), /*ContentIndent=*/0, in adaptStartOfLine()
651 if (Content[LineIndex].empty()) { in adaptStartOfLine()
652 if (LineIndex + 1 == Lines.size()) { in adaptStartOfLine()
664 if (ContentColumn[LineIndex] == 1) { in adaptStartOfLine()
671 unsigned WhitespaceOffsetInToken = Content[LineIndex - 1].data() + in adaptStartOfLine()
672 Content[LineIndex - 1].size() - in adaptStartOfLine()
673 tokenAt(LineIndex).TokenText.data(); in adaptStartOfLine()
674 unsigned WhitespaceLength = Content[LineIndex].data() - in adaptStartOfLine()
675 tokenAt(LineIndex).TokenText.data() - in adaptStartOfLine()
678 tokenAt(LineIndex), WhitespaceOffsetInToken, WhitespaceLength, "", Prefix, in adaptStartOfLine()
679 InPPDirective, /*Newlines=*/1, ContentColumn[LineIndex] - Prefix.size()); in adaptStartOfLine()
696 bool BreakableBlockComment::mayReflow(unsigned LineIndex, in mayReflow() argument
700 StringRef IndentContent = Content[LineIndex]; in mayReflow()
701 if (Lines[LineIndex].ltrim(Blanks).startswith("*")) { in mayReflow()
702 IndentContent = Lines[LineIndex].ltrim(Blanks).substr(1); in mayReflow()
704 return LineIndex > 0 && !CommentPragmasRegex.match(IndentContent) && in mayReflow()
705 mayReflowContent(Content[LineIndex]) && !Tok.Finalized && in mayReflow()
706 !switchesFormatting(tokenAt(LineIndex)); in mayReflow()
798 BreakableLineCommentSection::getRangeLength(unsigned LineIndex, unsigned Offset, in getRangeLength() argument
802 Content[LineIndex].substr(Offset, Length), StartColumn, Style.TabWidth, in getRangeLength()
806 unsigned BreakableLineCommentSection::getContentStartColumn(unsigned LineIndex, in getContentStartColumn() argument
809 return OriginalContentColumn[LineIndex]; in getContentStartColumn()
810 return ContentColumn[LineIndex]; in getContentStartColumn()
814 unsigned LineIndex, unsigned TailOffset, Split Split, in insertBreak() argument
816 StringRef Text = Content[LineIndex].substr(TailOffset); in insertBreak()
820 Text.data() - tokenAt(LineIndex).TokenText.data() + Split.first; in insertBreak()
824 unsigned IndentAtLineBreak = OriginalContentColumn[LineIndex] + in insertBreak()
825 Prefix[LineIndex].size() - in insertBreak()
826 OriginalPrefix[LineIndex].size(); in insertBreak()
827 assert(IndentAtLineBreak >= Prefix[LineIndex].size()); in insertBreak()
829 tokenAt(LineIndex), BreakOffsetInToken, CharsToRemove, "", in insertBreak()
830 Prefix[LineIndex], InPPDirective, /*Newlines=*/1, in insertBreak()
831 /*Spaces=*/IndentAtLineBreak - Prefix[LineIndex].size()); in insertBreak()
835 unsigned LineIndex, llvm::Regex &CommentPragmasRegex) const { in getReflowSplit() argument
836 if (!mayReflow(LineIndex, CommentPragmasRegex)) in getReflowSplit()
839 size_t Trimmed = Content[LineIndex].find_first_not_of(Blanks); in getReflowSplit()
848 void BreakableLineCommentSection::reflow(unsigned LineIndex, in reflow() argument
850 if (LineIndex > 0 && Tokens[LineIndex] != Tokens[LineIndex - 1]) { in reflow()
854 *Tokens[LineIndex], /*Newlines=*/0, /*Spaces=*/0, in reflow()
856 } else if (LineIndex > 0) { in reflow()
867 unsigned Offset = Lines[LineIndex - 1].data() + in reflow()
868 Lines[LineIndex - 1].size() - in reflow()
869 tokenAt(LineIndex - 1).TokenText.data(); in reflow()
873 Lines[LineIndex].data() - tokenAt(LineIndex).TokenText.data() - Offset; in reflow()
874 Whitespaces.replaceWhitespaceInToken(*Tokens[LineIndex], in reflow()
886 Lines[LineIndex].data() - tokenAt(LineIndex).TokenText.data(); in reflow()
888 Content[LineIndex].data() - Lines[LineIndex].data(); in reflow()
889 Whitespaces.replaceWhitespaceInToken(*Tokens[LineIndex], in reflow()
900 unsigned LineIndex, WhitespaceManager &Whitespaces) const { in adaptStartOfLine() argument
907 if (LineIndex > 0 && Tokens[LineIndex] != Tokens[LineIndex - 1]) { in adaptStartOfLine()
914 ContentColumn[LineIndex] - in adaptStartOfLine()
915 (Content[LineIndex].data() - Lines[LineIndex].data()) + in adaptStartOfLine()
916 (OriginalPrefix[LineIndex].size() - Prefix[LineIndex].size()); in adaptStartOfLine()
922 Whitespaces.replaceWhitespace(*Tokens[LineIndex], in adaptStartOfLine()
928 if (OriginalPrefix[LineIndex] != Prefix[LineIndex]) { in adaptStartOfLine()
932 assert(Prefix[LineIndex] == (OriginalPrefix[LineIndex] + " ").str() && in adaptStartOfLine()
936 tokenAt(LineIndex), OriginalPrefix[LineIndex].size(), 0, "", "", in adaptStartOfLine()
948 unsigned LineIndex, llvm::Regex &CommentPragmasRegex) const { in mayReflow() argument
951 StringRef IndentContent = Content[LineIndex]; in mayReflow()
952 if (Lines[LineIndex].startswith("//")) { in mayReflow()
953 IndentContent = Lines[LineIndex].substr(2); in mayReflow()
961 return LineIndex > 0 && !CommentPragmasRegex.match(IndentContent) && in mayReflow()
962 mayReflowContent(Content[LineIndex]) && !Tok.Finalized && in mayReflow()
963 !switchesFormatting(tokenAt(LineIndex)) && in mayReflow()
964 OriginalPrefix[LineIndex] == OriginalPrefix[LineIndex - 1]; in mayReflow()