clang 22.0.0git
Format.cpp File Reference

This file implements functions declared in Format.h. More...

Go to the source code of this file.

Classes

struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BreakBeforeNoexceptSpecifierStyle >
struct  llvm::yaml::MappingTraits< FormatStyle::AlignConsecutiveStyle >
struct  llvm::yaml::MappingTraits< FormatStyle::ShortCaseStatementsAlignmentStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::AttributeBreakingStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::ArrayInitializerAlignmentStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BinaryOperatorStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BinPackParametersStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BinPackStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BitFieldColonSpacingStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BraceBreakingStyle >
struct  llvm::yaml::MappingTraits< FormatStyle::BraceWrappingFlags >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BracketAlignmentStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BraceWrappingAfterControlStatementStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BreakBeforeConceptDeclarationsStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BreakBeforeInlineASMColonStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BreakBinaryOperationsStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BreakConstructorInitializersStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BreakInheritanceListStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::BreakTemplateDeclarationsStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::DAGArgStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::DefinitionReturnTypeBreakingStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::EscapedNewlineAlignmentStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::EmptyLineAfterAccessModifierStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::EmptyLineBeforeAccessModifierStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::EnumTrailingCommaStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::IndentExternBlockStyle >
struct  llvm::yaml::MappingTraits< FormatStyle::IntegerLiteralSeparatorStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::JavaScriptQuoteStyle >
struct  llvm::yaml::MappingTraits< FormatStyle::KeepEmptyLinesStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::LanguageKind >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::LanguageStandard >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::LambdaBodyIndentationKind >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::LineEndingStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::NamespaceIndentationKind >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::NumericLiteralComponentStyle >
struct  llvm::yaml::MappingTraits< FormatStyle::NumericLiteralCaseStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::OperandAlignmentStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::PackConstructorInitializersStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::PointerAlignmentStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::PPDirectiveIndentStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::QualifierAlignmentStyle >
struct  llvm::yaml::MappingTraits< FormatStyle::RawStringFormat >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::ReflowCommentsStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::ReferenceAlignmentStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::RemoveParenthesesStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::RequiresClausePositionStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::RequiresExpressionIndentationKind >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::ReturnTypeBreakingStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::SeparateDefinitionStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::ShortBlockStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::ShortFunctionStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::ShortIfStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::ShortLambdaStyle >
struct  llvm::yaml::MappingTraits< FormatStyle::SortIncludesOptions >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::SortJavaStaticImportOptions >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::SortUsingDeclarationsOptions >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::SpaceAroundPointerQualifiersStyle >
struct  llvm::yaml::MappingTraits< FormatStyle::SpaceBeforeParensCustom >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::SpaceBeforeParensStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::SpaceInEmptyBracesStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::SpacesInAnglesStyle >
struct  llvm::yaml::MappingTraits< FormatStyle::SpacesInLineComment >
struct  llvm::yaml::MappingTraits< FormatStyle::SpacesInParensCustom >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::SpacesInParensStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::TrailingCommaStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::TrailingCommentsAlignmentKinds >
struct  llvm::yaml::MappingTraits< FormatStyle::TrailingCommentsAlignmentStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::UseTabStyle >
struct  llvm::yaml::ScalarEnumerationTraits< FormatStyle::WrapNamespaceBodyWithEmptyLinesStyle >
struct  llvm::yaml::MappingTraits< FormatStyle >
struct  llvm::yaml::DocumentListTraits< std::vector< FormatStyle > >

Namespaces

namespace  llvm
 Diagnostic wrappers for TextAPI types for error reporting.
namespace  llvm::yaml
namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
namespace  clang::format
namespace  clang::format::internal

Macros

#define DEBUG_TYPE   "format-formatter"

Functions

const std::error_category & clang::format::getParseCategory ()
std::error_code clang::format::make_error_code (ParseError e)
llvm::Error clang::format::make_string_error (const Twine &Message)
static void clang::format::expandPresetsBraceWrapping (FormatStyle &Expanded)
static void clang::format::expandPresetsSpaceBeforeParens (FormatStyle &Expanded)
static void clang::format::expandPresetsSpacesInParens (FormatStyle &Expanded)
FormatStyle clang::format::getLLVMStyle (FormatStyle::LanguageKind Language)
FormatStyle clang::format::getGoogleStyle (FormatStyle::LanguageKind Language)
FormatStyle clang::format::getChromiumStyle (FormatStyle::LanguageKind Language)
FormatStyle clang::format::getMozillaStyle ()
FormatStyle clang::format::getWebKitStyle ()
FormatStyle clang::format::getGNUStyle ()
FormatStyle clang::format::getMicrosoftStyle (FormatStyle::LanguageKind Language)
FormatStyle clang::format::getClangFormatStyle ()
FormatStyle clang::format::getNoStyle ()
bool clang::format::getPredefinedStyle (StringRef Name, FormatStyle::LanguageKind Language, FormatStyle *Style)
ParseError clang::format::validateQualifierOrder (FormatStyle *Style)
std::error_code clang::format::parseConfiguration (llvm::MemoryBufferRef Config, FormatStyle *Style, bool AllowUnknownOptions, llvm::SourceMgr::DiagHandlerTy DiagHandler, void *DiagHandlerCtxt, bool IsDotHFile)
std::string clang::format::configurationAsText (const FormatStyle &Style)
static bool clang::format::affectsRange (ArrayRef< tooling::Range > Ranges, unsigned Start, unsigned End)
static std::pair< unsigned, unsignedclang::format::FindCursorIndex (const ArrayRef< IncludeDirective > &Includes, const ArrayRef< unsigned > &Indices, unsigned Cursor)
std::string clang::format::replaceCRLF (const std::string &Code)
static void clang::format::sortCppIncludes (const FormatStyle &Style, const ArrayRef< IncludeDirective > &Includes, ArrayRef< tooling::Range > Ranges, StringRef FileName, StringRef Code, tooling::Replacements &Replaces, unsigned *Cursor)
tooling::Replacements clang::format::sortCppIncludes (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName, tooling::Replacements &Replaces, unsigned *Cursor)
static unsigned clang::format::findJavaImportGroup (const FormatStyle &Style, StringRef ImportIdentifier)
static void clang::format::sortJavaImports (const FormatStyle &Style, const ArrayRef< JavaImportDirective > &Imports, ArrayRef< tooling::Range > Ranges, StringRef FileName, StringRef Code, tooling::Replacements &Replaces)
tooling::Replacements clang::format::sortJavaImports (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName, tooling::Replacements &Replaces)
bool clang::format::isMpegTS (StringRef Code)
bool clang::format::isLikelyXml (StringRef Code)
tooling::Replacements clang::format::sortIncludes (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName, unsigned *Cursor)
template<typename T>
static Expected< tooling::Replacementsclang::format::processReplacements (T ProcessFunc, StringRef Code, const tooling::Replacements &Replaces, const FormatStyle &Style)
Expected< tooling::Replacementsclang::format::formatReplacements (StringRef Code, const tooling::Replacements &Replaces, const FormatStyle &Style)
Expected< tooling::Replacementsclang::format::cleanupAroundReplacements (StringRef Code, const tooling::Replacements &Replaces, const FormatStyle &Style)
std::pair< tooling::Replacements, unsignedclang::format::internal::reformat (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, unsigned FirstStartColumn, unsigned NextStartColumn, unsigned LastStartColumn, StringRef FileName, FormattingAttemptStatus *Status)
 Reformats the given Ranges in the code fragment Code.
tooling::Replacements clang::format::reformat (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName, FormattingAttemptStatus *Status)
tooling::Replacements clang::format::cleanup (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName)
tooling::Replacements clang::format::reformat (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName, bool *IncompleteFormat)
tooling::Replacements clang::format::fixNamespaceEndComments (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName)
tooling::Replacements clang::format::sortUsingDeclarations (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName)
LangOptions clang::format::getFormattingLangOpts (const FormatStyle &Style)
static FormatStyle::LanguageKind clang::format::getLanguageByFileName (StringRef FileName)
static FormatStyle::LanguageKind clang::format::getLanguageByComment (const Environment &Env)
FormatStyle::LanguageKind clang::format::guessLanguage (StringRef FileName, StringRef Code)
llvm::ErrorOr< std::unique_ptr< llvm::MemoryBuffer > > clang::format::loadAndParseConfigFile (StringRef ConfigFile, llvm::vfs::FileSystem *FS, FormatStyle *Style, bool AllowUnknownOptions, llvm::SourceMgr::DiagHandlerTy DiagHandler, bool IsDotHFile)
Expected< FormatStyle > clang::format::getStyle (StringRef StyleName, StringRef FileName, StringRef FallbackStyleName, StringRef Code, llvm::vfs::FileSystem *FS, bool AllowUnknownOptions, llvm::SourceMgr::DiagHandlerTy DiagHandler)
static bool clang::format::isClangFormatOnOff (StringRef Comment, bool On)
bool clang::format::isClangFormatOn (StringRef Comment)
bool clang::format::isClangFormatOff (StringRef Comment)

Variables

const char * clang::format::StyleOptionHelpDescription
const char * clang::format::DefaultFormatStyle = "file"
const char * clang::format::DefaultFallbackStyle = "LLVM"

Detailed Description

This file implements functions declared in Format.h.

This will be split into separate files as we go.

Definition in file Format.cpp.

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "format-formatter"

Definition at line 29 of file Format.cpp.