clang API Documentation
Base class for single line tokens that can be broken. More...
#include <BreakableToken.h>
Public Member Functions | |
unsigned | getLineCount () const override |
Returns the number of lines in this token in the original code. | |
unsigned | getLineLengthAfterSplit (unsigned LineIndex, unsigned TailOffset, StringRef::size_type Length) const override |
Returns the number of columns required to format the piece of line at LineIndex , from byte offset Offset with length Length . | |
Protected Member Functions | |
BreakableSingleLineToken (const FormatToken &Tok, unsigned IndentLevel, unsigned StartColumn, StringRef Prefix, StringRef Postfix, bool InPPDirective, encoding::Encoding Encoding, const FormatStyle &Style) | |
Protected Attributes | |
unsigned | StartColumn |
StringRef | Prefix |
StringRef | Postfix |
StringRef | Line |
Base class for single line tokens that can be broken.
getSplit()
needs to be implemented by child classes.
Definition at line 91 of file BreakableToken.h.
clang::format::BreakableSingleLineToken::BreakableSingleLineToken | ( | const FormatToken & | Tok, |
unsigned | IndentLevel, | ||
unsigned | StartColumn, | ||
StringRef | Prefix, | ||
StringRef | Postfix, | ||
bool | InPPDirective, | ||
encoding::Encoding | Encoding, | ||
const FormatStyle & | Style | ||
) | [protected] |
Definition at line 144 of file BreakableToken.cpp.
References Line, and clang::format::FormatToken::TokenText.
unsigned clang::format::BreakableSingleLineToken::getLineCount | ( | ) | const [override, virtual] |
Returns the number of lines in this token in the original code.
Implements clang::format::BreakableToken.
Definition at line 134 of file BreakableToken.cpp.
unsigned clang::format::BreakableSingleLineToken::getLineLengthAfterSplit | ( | unsigned | LineIndex, |
unsigned | Offset, | ||
StringRef::size_type | Length | ||
) | const [override, virtual] |
Returns the number of columns required to format the piece of line at LineIndex
, from byte offset Offset
with length Length
.
Note that previous breaks are not taken into account. Offset
is always specified from the start of the (original) line. Length
can be set to StringRef::npos, which means "to the end of line".
Implements clang::format::BreakableToken.
Definition at line 136 of file BreakableToken.cpp.
References clang::format::encoding::columnWidthWithTabs(), clang::format::BreakableToken::Encoding, Line, Postfix, Prefix, StartColumn, clang::format::BreakableToken::Style, and clang::format::FormatStyle::TabWidth.
StringRef clang::format::BreakableSingleLineToken::Line [protected] |
Definition at line 111 of file BreakableToken.h.
Referenced by BreakableSingleLineToken(), getLineLengthAfterSplit(), clang::format::BreakableStringLiteral::getSplit(), and clang::format::BreakableLineComment::getSplit().
StringRef clang::format::BreakableSingleLineToken::Postfix [protected] |
Definition at line 109 of file BreakableToken.h.
Referenced by getLineLengthAfterSplit(), clang::format::BreakableStringLiteral::getSplit(), clang::format::BreakableStringLiteral::insertBreak(), and clang::format::BreakableLineComment::insertBreak().
StringRef clang::format::BreakableSingleLineToken::Prefix [protected] |
Definition at line 107 of file BreakableToken.h.
Referenced by clang::format::BreakableLineComment::BreakableLineComment(), getLineLengthAfterSplit(), clang::format::BreakableStringLiteral::getSplit(), clang::format::BreakableLineComment::getSplit(), clang::format::BreakableStringLiteral::insertBreak(), clang::format::BreakableLineComment::insertBreak(), and clang::format::BreakableLineComment::replaceWhitespaceBefore().