clang 22.0.0git
clang::format::WhitespaceManager::Change Struct Reference

Represents a change before a token, a break inside a token, or the layout of an unchanged token (or whitespace within). More...

#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/Format/WhitespaceManager.h"

Classes

class  IsBeforeInFile
 Functor to sort changes in original source order. More...

Public Member Functions

 Change (const FormatToken &Tok, bool CreateReplacement, SourceRange OriginalWhitespaceRange, int Spaces, unsigned StartOfTokenColumn, unsigned NewlinesBefore, StringRef PreviousLinePostfix, StringRef CurrentLinePrefix, bool IsAligned, bool ContinuesPPDirective, bool IsInsideToken)
 Creates a Change.
std::tuple< unsigned, unsigned, unsignedindentAndNestingLevel () const

Public Attributes

const FormatTokenTok
bool CreateReplacement
SourceRange OriginalWhitespaceRange
unsigned StartOfTokenColumn
unsigned NewlinesBefore
std::string PreviousLinePostfix
std::string CurrentLinePrefix
bool IsAligned
bool ContinuesPPDirective
int Spaces
bool IsInsideToken
bool IsTrailingComment
unsigned TokenLength
unsigned PreviousEndOfTokenColumn
unsigned EscapedNewlineColumn
const ChangeStartOfBlockComment
int IndentationOffset
int ConditionalsLevel

Detailed Description

Represents a change before a token, a break inside a token, or the layout of an unchanged token (or whitespace within).

Definition at line 89 of file WhitespaceManager.h.

Constructor & Destructor Documentation

◆ Change()

clang::format::WhitespaceManager::Change::Change ( const FormatToken & Tok,
bool CreateReplacement,
SourceRange OriginalWhitespaceRange,
int Spaces,
unsigned StartOfTokenColumn,
unsigned NewlinesBefore,
StringRef PreviousLinePostfix,
StringRef CurrentLinePrefix,
bool IsAligned,
bool ContinuesPPDirective,
bool IsInsideToken )

Creates a Change.

The generated Change will replace the characters at OriginalWhitespaceRange with a concatenation of PreviousLinePostfix, NewlinesBefore line breaks, Spaces spaces and CurrentLinePrefix.

StartOfTokenColumn and InPPDirective will be used to lay out trailing comments and escaped newlines.

Definition at line 34 of file WhitespaceManager.cpp.

References ConditionalsLevel, ContinuesPPDirective, CreateReplacement, CurrentLinePrefix, EscapedNewlineColumn, false, IndentationOffset, IsAligned, IsInsideToken, IsTrailingComment, NewlinesBefore, clang::nullptr, OriginalWhitespaceRange, PreviousEndOfTokenColumn, PreviousLinePostfix, Spaces, StartOfBlockComment, StartOfTokenColumn, Tok, and TokenLength.

Referenced by clang::format::WhitespaceManager::Change::IsBeforeInFile::operator()().

Member Function Documentation

◆ indentAndNestingLevel()

std::tuple< unsigned, unsigned, unsigned > clang::format::WhitespaceManager::Change::indentAndNestingLevel ( ) const
inline

Definition at line 169 of file WhitespaceManager.h.

References ConditionalsLevel, and Tok.

Member Data Documentation

◆ ConditionalsLevel

int clang::format::WhitespaceManager::Change::ConditionalsLevel

Definition at line 164 of file WhitespaceManager.h.

Referenced by Change(), and indentAndNestingLevel().

◆ ContinuesPPDirective

bool clang::format::WhitespaceManager::Change::ContinuesPPDirective

Definition at line 130 of file WhitespaceManager.h.

Referenced by Change().

◆ CreateReplacement

bool clang::format::WhitespaceManager::Change::CreateReplacement

Definition at line 121 of file WhitespaceManager.h.

Referenced by Change().

◆ CurrentLinePrefix

std::string clang::format::WhitespaceManager::Change::CurrentLinePrefix

Definition at line 128 of file WhitespaceManager.h.

Referenced by Change().

◆ EscapedNewlineColumn

unsigned clang::format::WhitespaceManager::Change::EscapedNewlineColumn

Definition at line 149 of file WhitespaceManager.h.

Referenced by Change().

◆ IndentationOffset

int clang::format::WhitespaceManager::Change::IndentationOffset

Definition at line 160 of file WhitespaceManager.h.

Referenced by Change().

◆ IsAligned

bool clang::format::WhitespaceManager::Change::IsAligned

Definition at line 129 of file WhitespaceManager.h.

Referenced by Change().

◆ IsInsideToken

bool clang::format::WhitespaceManager::Change::IsInsideToken

Definition at line 141 of file WhitespaceManager.h.

Referenced by Change().

◆ IsTrailingComment

bool clang::format::WhitespaceManager::Change::IsTrailingComment

Definition at line 146 of file WhitespaceManager.h.

Referenced by Change().

◆ NewlinesBefore

unsigned clang::format::WhitespaceManager::Change::NewlinesBefore

Definition at line 126 of file WhitespaceManager.h.

Referenced by Change().

◆ OriginalWhitespaceRange

SourceRange clang::format::WhitespaceManager::Change::OriginalWhitespaceRange

◆ PreviousEndOfTokenColumn

unsigned clang::format::WhitespaceManager::Change::PreviousEndOfTokenColumn

Definition at line 148 of file WhitespaceManager.h.

Referenced by Change().

◆ PreviousLinePostfix

std::string clang::format::WhitespaceManager::Change::PreviousLinePostfix

Definition at line 127 of file WhitespaceManager.h.

Referenced by Change().

◆ Spaces

int clang::format::WhitespaceManager::Change::Spaces

Definition at line 137 of file WhitespaceManager.h.

Referenced by Change().

◆ StartOfBlockComment

const Change* clang::format::WhitespaceManager::Change::StartOfBlockComment

Definition at line 159 of file WhitespaceManager.h.

Referenced by Change().

◆ StartOfTokenColumn

unsigned clang::format::WhitespaceManager::Change::StartOfTokenColumn

Definition at line 125 of file WhitespaceManager.h.

Referenced by Change().

◆ Tok

const FormatToken* clang::format::WhitespaceManager::Change::Tok

Definition at line 119 of file WhitespaceManager.h.

Referenced by Change(), and indentAndNestingLevel().

◆ TokenLength

unsigned clang::format::WhitespaceManager::Change::TokenLength

Definition at line 147 of file WhitespaceManager.h.

Referenced by Change().


The documentation for this struct was generated from the following files: