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 "/work/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 IndentedFromColumn, 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 IndentedFromColumn
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 95 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 IndentedFromColumn,
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 ContinuesPPDirective will be used to lay out trailing comments and escaped newlines. IndentedFromColumn will be used to continue aligned lines.

Definition at line 34 of file WhitespaceManager.cpp.

References ConditionalsLevel, ContinuesPPDirective, CreateReplacement, CurrentLinePrefix, EscapedNewlineColumn, false, IndentationOffset, IndentedFromColumn, 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 182 of file WhitespaceManager.h.

References ConditionalsLevel, and Tok.

Member Data Documentation

◆ ConditionalsLevel

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

Definition at line 177 of file WhitespaceManager.h.

Referenced by Change(), and indentAndNestingLevel().

◆ ContinuesPPDirective

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

Definition at line 143 of file WhitespaceManager.h.

Referenced by Change().

◆ CreateReplacement

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

Definition at line 129 of file WhitespaceManager.h.

Referenced by Change().

◆ CurrentLinePrefix

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

Definition at line 141 of file WhitespaceManager.h.

Referenced by Change().

◆ EscapedNewlineColumn

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

Definition at line 162 of file WhitespaceManager.h.

Referenced by Change().

◆ IndentationOffset

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

Definition at line 173 of file WhitespaceManager.h.

Referenced by Change().

◆ IndentedFromColumn

unsigned clang::format::WhitespaceManager::Change::IndentedFromColumn

Definition at line 138 of file WhitespaceManager.h.

Referenced by Change().

◆ IsAligned

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

Definition at line 142 of file WhitespaceManager.h.

Referenced by Change().

◆ IsInsideToken

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

Definition at line 154 of file WhitespaceManager.h.

Referenced by Change().

◆ IsTrailingComment

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

Definition at line 159 of file WhitespaceManager.h.

Referenced by Change().

◆ NewlinesBefore

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

Definition at line 139 of file WhitespaceManager.h.

Referenced by Change().

◆ OriginalWhitespaceRange

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

◆ PreviousEndOfTokenColumn

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

Definition at line 161 of file WhitespaceManager.h.

Referenced by Change().

◆ PreviousLinePostfix

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

Definition at line 140 of file WhitespaceManager.h.

Referenced by Change().

◆ Spaces

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

Definition at line 150 of file WhitespaceManager.h.

Referenced by Change().

◆ StartOfBlockComment

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

Definition at line 172 of file WhitespaceManager.h.

Referenced by Change().

◆ StartOfTokenColumn

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

Definition at line 133 of file WhitespaceManager.h.

Referenced by Change().

◆ Tok

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

Definition at line 127 of file WhitespaceManager.h.

Referenced by Change(), and indentAndNestingLevel().

◆ TokenLength

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

Definition at line 160 of file WhitespaceManager.h.

Referenced by Change().


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