|
clang
5.0.0
|
A wrapper around a Token storing information about the whitespace characters preceding it.
More...
Public Member Functions | |
| FormatToken () | |
| bool | is (tok::TokenKind Kind) const |
| bool | is (TokenType TT) const |
| bool | is (const IdentifierInfo *II) const |
| bool | is (tok::PPKeywordKind Kind) const |
| template<typename A , typename B > | |
| bool | isOneOf (A K1, B K2) const |
| template<typename A , typename B , typename... Ts> | |
| bool | isOneOf (A K1, B K2, Ts...Ks) const |
| template<typename T > | |
| bool | isNot (T Kind) const |
| template<typename A , typename... Ts> | |
| bool | startsSequence (A K1, Ts...Tokens) const |
true if this token starts a sequence with the given tokens in order, following the Next pointers, ignoring comments. More... | |
| template<typename A , typename... Ts> | |
| bool | endsSequence (A K1, Ts...Tokens) const |
true if this token ends a sequence with the given tokens in order, following the Previous pointers, ignoring comments. More... | |
| bool | isStringLiteral () const |
| bool | isObjCAtKeyword (tok::ObjCKeywordKind Kind) const |
| bool | isAccessSpecifier (bool ColonRequired=true) const |
| bool | isSimpleTypeSpecifier () const |
| Determine whether the token is a simple-type-specifier. More... | |
| bool | isObjCAccessSpecifier () const |
| bool | opensScope () const |
Returns whether Tok is ([{ or a template opening <. More... | |
| bool | closesScope () const |
Returns whether Tok is )]} or a template closing >. More... | |
| bool | isMemberAccess () const |
Returns true if this is a "." or "->" accessing a member. More... | |
| bool | isUnaryOperator () const |
| bool | isBinaryOperator () const |
| bool | isTrailingComment () const |
| bool | isFunctionLikeKeyword () const |
Returns true if this is a keyword that can be used like a function call (e.g. More... | |
| bool | isLabelString () const |
Returns true if this is a string literal that's like a label, e.g. More... | |
| SourceLocation | getStartOfNonWhitespace () const |
| Returns actual token start location without leading escaped newlines and whitespace. More... | |
| prec::Level | getPrecedence () const |
| FormatToken * | getPreviousNonComment () const |
| Returns the previous token ignoring comments. More... | |
| const FormatToken * | getNextNonComment () const |
| Returns the next token ignoring comments. More... | |
| bool | opensBlockOrBlockTypeList (const FormatStyle &Style) const |
Returns true if this tokens starts a block-type list, i.e. More... | |
| bool | closesBlockOrBlockTypeList (const FormatStyle &Style) const |
| Same as opensBlockOrBlockTypeList, but for the closing token. More... | |
| const FormatToken * | getNamespaceToken () const |
| Return the actual namespace token, if this token starts a namespace block. More... | |
Public Attributes | |
| Token | Tok |
The Token. More... | |
| unsigned | NewlinesBefore = 0 |
The number of newlines immediately before the Token. More... | |
| bool | HasUnescapedNewline = false |
Whether there is at least one unescaped newline before the Token. More... | |
| SourceRange | WhitespaceRange |
The range of the whitespace immediately preceding the Token. More... | |
| unsigned | LastNewlineOffset = 0 |
| The offset just past the last ' ' in this token's leading whitespace (relative to WhiteSpaceStart). More... | |
| unsigned | ColumnWidth = 0 |
| The width of the non-whitespace parts of the token (or its first line for multi-line tokens) in columns. More... | |
| unsigned | LastLineColumnWidth = 0 |
| Contains the width in columns of the last line of a multi-line token. More... | |
| bool | IsMultiline = false |
| Whether the token text contains newlines (escaped or not). More... | |
| bool | IsFirst = false |
| Indicates that this is the first token of the file. More... | |
| bool | MustBreakBefore = false |
| Whether there must be a line break before this token. More... | |
| StringRef | TokenText |
| The raw text of the token. More... | |
| bool | IsUnterminatedLiteral = 0 |
Set to true if this token is an unterminated literal. More... | |
| BraceBlockKind | BlockKind = BK_Unknown |
| Contains the kind of block if this token is a brace. More... | |
| TokenType | Type = TT_Unknown |
| unsigned | SpacesRequiredBefore = 0 |
| The number of spaces that should be inserted before this token. More... | |
| bool | CanBreakBefore = false |
true if it is allowed to break before this token. More... | |
| bool | ClosesTemplateDeclaration = false |
true if this is the ">" of "template<..>". More... | |
| unsigned | ParameterCount = 0 |
| Number of parameters, if this is "(", "[" or "<". More... | |
| unsigned | BlockParameterCount = 0 |
| Number of parameters that are nested blocks, if this is "(", "[" or "<". More... | |
| tok::TokenKind | ParentBracket = tok::unknown |
| If this is a bracket ("<", "(", "[" or "{"), contains the kind of the surrounding bracket. More... | |
| std::unique_ptr< TokenRole > | Role |
| A token can have a special role that can carry extra information about the token's formatting. More... | |
| ParameterPackingKind | PackingKind = PPK_Inconclusive |
| If this is an opening parenthesis, how are the parameters packed? More... | |
| unsigned | TotalLength = 0 |
| The total length of the unwrapped line up to and including this token. More... | |
| unsigned | OriginalColumn = 0 |
| The original 0-based column of this token, including expanded tabs. More... | |
| unsigned | UnbreakableTailLength = 0 |
| The length of following tokens until the next natural split point, or the next token that can be broken. More... | |
| unsigned | BindingStrength = 0 |
| The binding strength of a token. More... | |
| unsigned | NestingLevel = 0 |
| The nesting level of this token, i.e. More... | |
| unsigned | IndentLevel = 0 |
| The indent level of this token. Copied from the surrounding line. More... | |
| unsigned | SplitPenalty = 0 |
| Penalty for inserting a line break before this token. More... | |
| unsigned | LongestObjCSelectorName = 0 |
| If this is the first ObjC selector name in an ObjC method definition or call, this contains the length of the longest name. More... | |
| SmallVector< prec::Level, 4 > | FakeLParens |
| Stores the number of required fake parentheses and the corresponding operator precedence. More... | |
| unsigned | FakeRParens = 0 |
| Insert this many fake ) after this token for correct indentation. More... | |
| bool | StartsBinaryExpression = false |
true if this token starts a binary expression, i.e. More... | |
| bool | EndsBinaryExpression = false |
true if this token ends a binary expression. More... | |
| unsigned | OperatorIndex = 0 |
| Is this is an operator (or "."/"->") in a sequence of operators with the same precedence, contains the 0-based operator index. More... | |
| FormatToken * | NextOperator = nullptr |
| If this is an operator (or "."/"->") in a sequence of operators with the same precedence, points to the next operator. More... | |
| bool | PartOfMultiVariableDeclStmt = false |
Is this token part of a DeclStmt defining multiple variables? More... | |
| bool | ContinuesLineCommentSection = false |
| Does this line comment continue a line comment section? More... | |
| FormatToken * | MatchingParen = nullptr |
| If this is a bracket, this points to the matching one. More... | |
| FormatToken * | Previous = nullptr |
| The previous token in the unwrapped line. More... | |
| FormatToken * | Next = nullptr |
| The next token in the unwrapped line. More... | |
| SmallVector< AnnotatedLine *, 1 > | Children |
| If this token starts a block, this contains all the unwrapped lines in it. More... | |
| FormatDecision | Decision = FD_Unformatted |
| Stores the formatting decision for the token once it was made. More... | |
| bool | Finalized = false |
If true, this token has been fully formatted (indented and potentially re-formatted inside), and we do not allow further formatting changes. More... | |
A wrapper around a Token storing information about the whitespace characters preceding it.
Definition at line 119 of file FormatToken.h.
|
inline |
Definition at line 120 of file FormatToken.h.
|
inline |
Same as opensBlockOrBlockTypeList, but for the closing token.
Definition at line 475 of file FormatToken.h.
References closesScope(), is(), MatchingParen, and opensBlockOrBlockTypeList().
Referenced by clang::format::ContinuationIndenter::canBreak(), and clang::format::ContinuationIndenter::mustBreak().
|
inline |
Returns whether Tok is )]} or a template closing >.
Definition at line 357 of file FormatToken.h.
References is(), isOneOf(), and TokenText.
Referenced by closesBlockOrBlockTypeList(), and clang::format::startsSegmentOfBuilderTypeCall().
|
inline |
true if this token ends a sequence with the given tokens in order, following the Previous pointers, ignoring comments.
Definition at line 324 of file FormatToken.h.
References Tokens.
Referenced by clang::format::AnnotatedLine::endsWith().
|
inline |
Return the actual namespace token, if this token starts a namespace block.
Definition at line 483 of file FormatToken.h.
References getNextNonComment(), and is().
|
inline |
Returns the next token ignoring comments.
Definition at line 454 of file FormatToken.h.
References is(), Next, and Tok.
Referenced by getNamespaceToken(), and clang::format::CommaSeparatedList::precomputeFormattingInfos().
|
inline |
Definition at line 441 of file FormatToken.h.
References clang::getBinOpPrecedence(), clang::Token::getKind(), and Tok.
Referenced by isBinaryOperator(), and clang::format::ContinuationIndenter::mustBreak().
|
inline |
Returns the previous token ignoring comments.
Definition at line 446 of file FormatToken.h.
References is(), Previous, and Tok.
Referenced by clang::format::CommaSeparatedList::formatAfterToken(), and clang::format::CommaSeparatedList::precomputeFormattingInfos().
|
inline |
Returns actual token start location without leading escaped newlines and whitespace.
This can be different to Tok.getLocation(), which includes leading escaped newlines.
Definition at line 437 of file FormatToken.h.
References clang::SourceRange::getEnd(), and WhitespaceRange.
Referenced by clang::format::WhitespaceManager::replaceWhitespaceInToken().
|
inline |
Definition at line 296 of file FormatToken.h.
References clang::Token::is(), and Tok.
Referenced by clang::format::ContinuationIndenter::addTokenToState(), clang::format::NamespaceEndCommentsFixer::analyze(), clang::format::BreakableBlockComment::BreakableBlockComment(), clang::format::BreakableLineCommentSection::BreakableLineCommentSection(), clang::format::TokenAnnotator::calculateFormattingInformation(), clang::format::ContinuationIndenter::canBreak(), closesBlockOrBlockTypeList(), closesScope(), clang::format::continuesLineCommentSection(), getNamespaceToken(), getNextNonComment(), getPreviousNonComment(), isAccessSpecifier(), clang::format::isAllmanBrace(), clang::format::isFunctionDeclarationName(), clang::format::AdditionalKeywords::IsJavaScriptIdentifier(), isLabelString(), isNot(), isObjCAccessSpecifier(), isOneOf(), isTrailingComment(), clang::format::mustBeJSIdent(), clang::format::ContinuationIndenter::mustBreak(), opensBlockOrBlockTypeList(), clang::format::opensProtoMessageField(), opensScope(), clang::format::CommaSeparatedList::precomputeFormattingInfos(), clang::format::ShouldBreakBeforeBrace(), clang::format::startsNextParameter(), and clang::format::switchesFormatting().
Definition at line 297 of file FormatToken.h.
|
inline |
Definition at line 298 of file FormatToken.h.
References clang::Token::getIdentifierInfo(), and Tok.
|
inline |
Definition at line 301 of file FormatToken.h.
References clang::Token::getIdentifierInfo(), clang::IdentifierInfo::getPPKeywordID(), and Tok.
Definition at line 334 of file FormatToken.h.
|
inline |
Definition at line 387 of file FormatToken.h.
References clang::prec::Comma, and getPrecedence().
|
inline |
Returns true if this is a keyword that can be used like a function call (e.g.
sizeof, typeid, ...).
Definition at line 399 of file FormatToken.h.
References clang::Token::getKind(), and Tok.
|
inline |
Returns true if this is a string literal that's like a label, e.g.
ends with "=" or ":".
Definition at line 419 of file FormatToken.h.
|
inline |
Returns true if this is a "." or "->" accessing a member.
Definition at line 365 of file FormatToken.h.
References isOneOf().
Referenced by clang::format::ContinuationIndenter::canBreak(), clang::format::ContinuationIndenter::mustBreak(), and clang::format::startsSegmentOfBuilderTypeCall().
|
inline |
Definition at line 312 of file FormatToken.h.
References is().
Referenced by clang::format::NamespaceEndCommentsFixer::analyze(), clang::format::ContinuationIndenter::canBreak(), clang::format::ContinuationIndenter::mustBreak(), clang::format::opensProtoMessageField(), clang::format::TokenAnnotator::setCommentLineLevels(), and clang::format::startsNextParameter().
|
inline |
Definition at line 342 of file FormatToken.h.
References is(), isObjCAtKeyword(), and Next.
|
inline |
Definition at line 330 of file FormatToken.h.
References clang::Token::isObjCAtKeyword(), and Tok.
Referenced by isObjCAccessSpecifier().
|
inline |
Definition at line 305 of file FormatToken.h.
References is().
Referenced by clang::format::ContinuationIndenter::canBreak(), closesScope(), clang::format::CommaSeparatedList::formatAfterToken(), isAccessSpecifier(), clang::format::isAllmanBrace(), clang::format::isJSDeclOrStmt(), isMemberAccess(), isOneOf(), clang::format::AnnotatedLine::mightBeFunctionDefinition(), clang::format::mustBeJSIdent(), clang::format::mustBeJSIdentOrValue(), clang::format::ContinuationIndenter::mustBreak(), opensScope(), and clang::format::CommaSeparatedList::precomputeFormattingInfos().
|
inline |
Definition at line 309 of file FormatToken.h.
| bool clang::format::FormatToken::isSimpleTypeSpecifier | ( | ) | const |
Determine whether the token is a simple-type-specifier.
Definition at line 41 of file FormatToken.cpp.
References clang::Token::getKind(), and Tok.
|
inline |
Definition at line 328 of file FormatToken.h.
References clang::Token::getKind(), clang::tok::isStringLiteral(), and Tok.
|
inline |
Definition at line 392 of file FormatToken.h.
References is(), NewlinesBefore, and Next.
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation(), clang::format::CommaSeparatedList::formatAfterToken(), clang::format::ContinuationIndenter::mustBreak(), clang::format::CommaSeparatedList::precomputeFormattingInfos(), and clang::format::startsNextParameter().
|
inline |
Definition at line 371 of file FormatToken.h.
References clang::Token::getKind(), and Tok.
|
inline |
Returns true if this tokens starts a block-type list, i.e.
a list that should be indented with a block indent.
Definition at line 463 of file FormatToken.h.
References clang::format::BK_Block, BlockKind, clang::format::FormatStyle::Cpp11BracedListStyle, is(), clang::format::FormatStyle::Language, clang::format::FormatStyle::LK_Proto, clang::format::FormatStyle::LK_TextProto, NestingLevel, and opensScope().
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation(), and closesBlockOrBlockTypeList().
|
inline |
Returns whether Tok is ([{ or a template opening <.
Definition at line 350 of file FormatToken.h.
References is(), isOneOf(), and TokenText.
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation(), clang::format::ContinuationIndenter::canBreak(), and opensBlockOrBlockTypeList().
|
inline |
true if this token starts a sequence with the given tokens in order, following the Next pointers, ignoring comments.
Definition at line 317 of file FormatToken.h.
References Tokens.
Referenced by clang::format::AnnotatedLine::startsWith().
| unsigned clang::format::FormatToken::BindingStrength = 0 |
The binding strength of a token.
This is a combined value of operator precedence, parenthesis nesting, etc.
Definition at line 223 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation().
| BraceBlockKind clang::format::FormatToken::BlockKind = BK_Unknown |
Contains the kind of block if this token is a brace.
Definition at line 173 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation(), clang::format::ContinuationIndenter::canBreak(), clang::format::CommaSeparatedList::formatAfterToken(), clang::format::isAllmanBrace(), clang::format::ContinuationIndenter::mustBreak(), and opensBlockOrBlockTypeList().
| unsigned clang::format::FormatToken::BlockParameterCount = 0 |
Number of parameters that are nested blocks, if this is "(", "[" or "<".
Definition at line 195 of file FormatToken.h.
true if it is allowed to break before this token.
Definition at line 181 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::annotate(), clang::format::TokenAnnotator::calculateFormattingInformation(), clang::format::ContinuationIndenter::canBreak(), clang::format::getLengthToMatchingParen(), clang::format::ContinuationIndenter::mustBreak(), and clang::format::CommaSeparatedList::precomputeFormattingInfos().
| SmallVector<AnnotatedLine *, 1> clang::format::FormatToken::Children |
If this token starts a block, this contains all the unwrapped lines in it.
Definition at line 286 of file FormatToken.h.
Referenced by clang::format::AnnotatedLine::AnnotatedLine(), clang::format::TokenAnnotator::calculateFormattingInformation(), and clang::format::AnnotatedLine::~AnnotatedLine().
true if this is the ">" of "template<..>".
Definition at line 184 of file FormatToken.h.
Referenced by clang::format::ContinuationIndenter::mustBreak().
| unsigned clang::format::FormatToken::ColumnWidth = 0 |
The width of the non-whitespace parts of the token (or its first line for multi-line tokens) in columns.
We need this to correctly measure number of columns a token spans.
Definition at line 145 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation(), clang::format::CodePointsBetween(), and clang::format::CommaSeparatedList::formatAfterToken().
Does this line comment continue a line comment section?
Only set to true if Type == TT_LineComment.
Definition at line 273 of file FormatToken.h.
| FormatDecision clang::format::FormatToken::Decision = FD_Unformatted |
Stores the formatting decision for the token once it was made.
Definition at line 289 of file FormatToken.h.
Referenced by clang::format::WhitespaceManager::replaceWhitespace().
true if this token ends a binary expression.
Definition at line 255 of file FormatToken.h.
Referenced by clang::format::ContinuationIndenter::mustBreak().
| SmallVector<prec::Level, 4> clang::format::FormatToken::FakeLParens |
Stores the number of required fake parentheses and the corresponding operator precedence.
If multiple fake parentheses start at a token, this vector stores them in reverse order, i.e. inner fake parenthesis first.
Definition at line 247 of file FormatToken.h.
| unsigned clang::format::FormatToken::FakeRParens = 0 |
Insert this many fake ) after this token for correct indentation.
Definition at line 249 of file FormatToken.h.
If true, this token has been fully formatted (indented and potentially re-formatted inside), and we do not allow further formatting changes.
Definition at line 294 of file FormatToken.h.
Referenced by clang::format::WhitespaceManager::addUntouchableToken(), clang::format::NamespaceEndCommentsFixer::analyze(), clang::format::BreakableBlockComment::mayReflow(), clang::format::BreakableLineCommentSection::mayReflow(), clang::format::WhitespaceManager::replaceWhitespace(), and clang::format::WhitespaceManager::replaceWhitespaceInToken().
Whether there is at least one unescaped newline before the Token.
Definition at line 133 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation(), and clang::format::CommaSeparatedList::precomputeFormattingInfos().
| unsigned clang::format::FormatToken::IndentLevel = 0 |
The indent level of this token. Copied from the surrounding line.
Definition at line 230 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation(), and clang::format::WhitespaceManager::Change::indentAndNestingLevel().
Indicates that this is the first token of the file.
Definition at line 155 of file FormatToken.h.
Referenced by clang::format::WhitespaceManager::addUntouchableToken(), clang::format::UnwrappedLineFormatter::format(), clang::format::WhitespaceManager::replaceWhitespace(), and clang::format::WhitespaceManager::replaceWhitespaceInToken().
Whether the token text contains newlines (escaped or not).
Definition at line 152 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation().
| bool clang::format::FormatToken::IsUnterminatedLiteral = 0 |
Set to true if this token is an unterminated literal.
Definition at line 170 of file FormatToken.h.
| unsigned clang::format::FormatToken::LastLineColumnWidth = 0 |
Contains the width in columns of the last line of a multi-line token.
Definition at line 149 of file FormatToken.h.
| unsigned clang::format::FormatToken::LastNewlineOffset = 0 |
The offset just past the last '
' in this token's leading whitespace (relative to WhiteSpaceStart).
0 if there is no '
'.
Definition at line 140 of file FormatToken.h.
Referenced by clang::format::ContinuationIndenter::addTokenToState().
| unsigned clang::format::FormatToken::LongestObjCSelectorName = 0 |
If this is the first ObjC selector name in an ObjC method definition or call, this contains the length of the longest name.
This being set to 0 means that the selectors should not be colon-aligned, e.g. because several of them are block-type.
Definition at line 240 of file FormatToken.h.
| FormatToken* clang::format::FormatToken::MatchingParen = nullptr |
If this is a bracket, this points to the matching one.
Definition at line 276 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation(), closesBlockOrBlockTypeList(), clang::format::CommaSeparatedList::formatAfterToken(), clang::format::getLengthToMatchingParen(), clang::format::isFunctionDeclarationName(), and clang::format::CommaSeparatedList::precomputeFormattingInfos().
Whether there must be a line break before this token.
This happens for example when a preprocessor directive ended directly before the token.
Definition at line 161 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::annotate(), clang::format::TokenAnnotator::calculateFormattingInformation(), clang::format::ContinuationIndenter::canBreak(), clang::format::CommaSeparatedList::formatAfterToken(), clang::format::ContinuationIndenter::mustBreak(), and clang::format::CommaSeparatedList::precomputeFormattingInfos().
| unsigned clang::format::FormatToken::NestingLevel = 0 |
The nesting level of this token, i.e.
the number of surrounding (), [], {} or <>.
Definition at line 227 of file FormatToken.h.
Referenced by clang::format::ContinuationIndenter::canBreak(), clang::format::WhitespaceManager::Change::indentAndNestingLevel(), clang::format::isFunctionDeclarationName(), clang::format::ContinuationIndenter::mustBreak(), opensBlockOrBlockTypeList(), clang::format::opensProtoMessageField(), and clang::format::CommaSeparatedList::precomputeFormattingInfos().
| unsigned clang::format::FormatToken::NewlinesBefore = 0 |
The number of newlines immediately before the Token.
This can be used to determine what the user wrote in the original code and thereby e.g. leave an empty line between two function definitions.
Definition at line 129 of file FormatToken.h.
Referenced by clang::format::WhitespaceManager::addUntouchableToken(), clang::format::NamespaceEndCommentsFixer::analyze(), clang::format::JavaScriptImportSorter::analyze(), clang::format::continuesLineCommentSection(), clang::format::UnwrappedLineFormatter::format(), isTrailingComment(), and clang::format::TokenAnnotator::setCommentLineLevels().
| FormatToken* clang::format::FormatToken::Next = nullptr |
The next token in the unwrapped line.
Definition at line 282 of file FormatToken.h.
Referenced by clang::format::NamespaceEndCommentsFixer::analyze(), clang::format::AnnotatedLine::AnnotatedLine(), clang::format::TokenAnnotator::calculateFormattingInformation(), clang::format::UnwrappedLineFormatter::format(), clang::format::CommaSeparatedList::formatAfterToken(), clang::format::getLengthToMatchingParen(), getNextNonComment(), isAccessSpecifier(), clang::format::isFunctionDeclarationName(), isObjCAccessSpecifier(), isTrailingComment(), clang::format::maxNestingDepth(), clang::format::CommaSeparatedList::precomputeFormattingInfos(), clang::format::TokenAnnotator::setCommentLineLevels(), clang::format::BreakableLineCommentSection::updateNextToken(), and clang::format::AnnotatedLine::~AnnotatedLine().
| FormatToken* clang::format::FormatToken::NextOperator = nullptr |
If this is an operator (or "."/"->") in a sequence of operators with the same precedence, points to the next operator.
Definition at line 263 of file FormatToken.h.
Referenced by clang::format::getLengthToNextOperator().
| unsigned clang::format::FormatToken::OperatorIndex = 0 |
Is this is an operator (or "."/"->") in a sequence of operators with the same precedence, contains the 0-based operator index.
Definition at line 259 of file FormatToken.h.
| unsigned clang::format::FormatToken::OriginalColumn = 0 |
The original 0-based column of this token, including expanded tabs.
The configured TabWidth is used as tab width.
Definition at line 214 of file FormatToken.h.
Referenced by clang::format::WhitespaceManager::addUntouchableToken(), clang::format::UnwrappedLineFormatter::format(), and clang::format::TokenAnnotator::setCommentLineLevels().
| ParameterPackingKind clang::format::FormatToken::PackingKind = PPK_Inconclusive |
If this is an opening parenthesis, how are the parameters packed?
Definition at line 206 of file FormatToken.h.
| unsigned clang::format::FormatToken::ParameterCount = 0 |
Number of parameters, if this is "(", "[" or "<".
This is initialized to 1 as we don't need to distinguish functions with 0 parameters from functions with 1 parameter. Thus, we can simply count the number of commas.
Definition at line 191 of file FormatToken.h.
Referenced by clang::format::ContinuationIndenter::mustBreak().
| tok::TokenKind clang::format::FormatToken::ParentBracket = tok::unknown |
If this is a bracket ("<", "(", "[" or "{"), contains the kind of the surrounding bracket.
Definition at line 199 of file FormatToken.h.
Is this token part of a DeclStmt defining multiple variables?
Only set if Type == TT_StartOfName.
Definition at line 268 of file FormatToken.h.
| FormatToken* clang::format::FormatToken::Previous = nullptr |
The previous token in the unwrapped line.
Definition at line 279 of file FormatToken.h.
Referenced by clang::format::ContinuationIndenter::addTokenToState(), clang::format::AnnotatedLine::AnnotatedLine(), clang::format::TokenAnnotator::calculateFormattingInformation(), clang::format::ContinuationIndenter::canBreak(), clang::format::CommaSeparatedList::formatAfterToken(), getPreviousNonComment(), clang::format::isFunctionDeclarationName(), clang::format::ContinuationIndenter::mustBreak(), clang::format::opensProtoMessageField(), clang::format::CommaSeparatedList::precomputeFormattingInfos(), clang::format::startsNextParameter(), and clang::format::startsSegmentOfBuilderTypeCall().
| std::unique_ptr<TokenRole> clang::format::FormatToken::Role |
A token can have a special role that can carry extra information about the token's formatting.
Definition at line 203 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation(), and clang::format::AnnotatedLine::~AnnotatedLine().
| unsigned clang::format::FormatToken::SpacesRequiredBefore = 0 |
The number of spaces that should be inserted before this token.
Definition at line 178 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::annotate(), and clang::format::TokenAnnotator::calculateFormattingInformation().
| unsigned clang::format::FormatToken::SplitPenalty = 0 |
Penalty for inserting a line break before this token.
Definition at line 233 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation().
true if this token starts a binary expression, i.e.
has at least one fake l_paren with a precedence greater than prec::Unknown.
Definition at line 253 of file FormatToken.h.
| Token clang::format::FormatToken::Tok |
The Token.
Definition at line 123 of file FormatToken.h.
Referenced by clang::format::ContinuationIndenter::addTokenToState(), clang::format::UnwrappedLineFormatter::format(), getNextNonComment(), getPrecedence(), getPreviousNonComment(), is(), isFunctionLikeKeyword(), clang::format::AdditionalKeywords::IsJavaScriptIdentifier(), isObjCAtKeyword(), isSimpleTypeSpecifier(), isStringLiteral(), isUnaryOperator(), clang::format::mustBeJSIdent(), clang::format::mustBeJSIdentOrValue(), and clang::format::ContinuationIndenter::mustBreak().
| StringRef clang::format::FormatToken::TokenText |
The raw text of the token.
Contains the raw token text without leading whitespace and without leading escaped newlines.
Definition at line 167 of file FormatToken.h.
Referenced by clang::format::BreakableBlockComment::BreakableBlockComment(), clang::format::BreakableSingleLineToken::BreakableSingleLineToken(), closesScope(), clang::format::BreakableComment::compressWhitespace(), clang::format::continuesLineCommentSection(), clang::format::BreakableBlockComment::insertBreak(), clang::format::BreakableLineCommentSection::insertBreak(), isLabelString(), clang::format::ContinuationIndenter::mustBreak(), opensScope(), clang::format::BreakableBlockComment::replaceWhitespaceBefore(), clang::format::BreakableLineCommentSection::replaceWhitespaceBefore(), and clang::format::switchesFormatting().
| unsigned clang::format::FormatToken::TotalLength = 0 |
The total length of the unwrapped line up to and including this token.
Definition at line 210 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation(), clang::format::CodePointsBetween(), clang::format::UnwrappedLineFormatter::format(), clang::format::getLengthToMatchingParen(), clang::format::getLengthToNextOperator(), and clang::format::ContinuationIndenter::mustBreak().
| TokenType clang::format::FormatToken::Type = TT_Unknown |
Definition at line 175 of file FormatToken.h.
Referenced by clang::format::TokenAnnotator::calculateFormattingInformation(), and clang::format::CommaSeparatedList::formatAfterToken().
| unsigned clang::format::FormatToken::UnbreakableTailLength = 0 |
The length of following tokens until the next natural split point, or the next token that can be broken.
Definition at line 218 of file FormatToken.h.
| SourceRange clang::format::FormatToken::WhitespaceRange |
The range of the whitespace immediately preceding the Token.
Definition at line 136 of file FormatToken.h.
Referenced by clang::format::ContinuationIndenter::addTokenToState(), clang::format::WhitespaceManager::addUntouchableToken(), getStartOfNonWhitespace(), and clang::format::WhitespaceManager::replaceWhitespace().
1.8.6