|
clang 24.0.0git
|
Various functions to configurably format source code. More...
#include "clang/Basic/LangOptions.h"#include "clang/Basic/TokenKinds.h"#include "clang/Tooling/Core/Replacement.h"#include "clang/Tooling/Inclusions/IncludeStyle.h"#include "llvm/ADT/ArrayRef.h"#include "llvm/Support/Regex.h"#include "llvm/Support/SourceMgr.h"#include <optional>#include <system_error>Go to the source code of this file.
Namespaces | |
| namespace | llvm |
| Diagnostic wrappers for TextAPI types for error reporting. | |
| namespace | llvm::vfs |
| namespace | clang |
| Top level wrappers for InstallAPI frontend operations. | |
| namespace | clang::format |
Functions | |
| const std::error_category & | clang::format::getParseCategory () |
| std::error_code | clang::format::make_error_code (ParseError e) |
| FormatStyle | clang::format::getLLVMStyle (FormatStyle::LanguageKind Language=FormatStyle::LK_Cpp) |
| Returns a format style complying with the LLVM coding standards: http://llvm.org/docs/CodingStandards.html. | |
| FormatStyle | clang::format::getGoogleStyle (FormatStyle::LanguageKind Language) |
| Returns a format style complying with one of Google's style guides: http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml. | |
| FormatStyle | clang::format::getChromiumStyle (FormatStyle::LanguageKind Language) |
| Returns a format style complying with Chromium's style guide: http://www.chromium.org/developers/coding-style. | |
| FormatStyle | clang::format::getMozillaStyle () |
| Returns a format style complying with Mozilla's style guide: https://firefox-source-docs.mozilla.org/code-quality/coding-style/index.html. | |
| FormatStyle | clang::format::getWebKitStyle () |
| Returns a format style complying with Webkit's style guide: http://www.webkit.org/coding/coding-style.html. | |
| FormatStyle | clang::format::getGNUStyle () |
| Returns a format style complying with GNU Coding Standards: http://www.gnu.org/prep/standards/standards.html. | |
| FormatStyle | clang::format::getMicrosoftStyle (FormatStyle::LanguageKind Language) |
| Returns a format style complying with Microsoft style guide: https://docs.microsoft.com/en-us/visualstudio/ide/editorconfig-code-style-settings-reference?view=vs-2017. | |
| FormatStyle | clang::format::getClangFormatStyle () |
| FormatStyle | clang::format::getNoStyle () |
| Returns style indicating formatting should be not applied at all. | |
| bool | clang::format::getPredefinedStyle (StringRef Name, FormatStyle::LanguageKind Language, FormatStyle *Style) |
| Gets a predefined style for the specified language by name. | |
| std::error_code | clang::format::parseConfiguration (llvm::MemoryBufferRef Config, FormatStyle *Style, bool AllowUnknownOptions=false, llvm::SourceMgr::DiagHandlerTy DiagHandler=nullptr, void *DiagHandlerCtx=nullptr, bool IsDotHFile=false) |
| Parse configuration from YAML-formatted text. | |
| std::error_code | clang::format::parseConfiguration (StringRef Config, FormatStyle *Style, bool AllowUnknownOptions=false, bool IsDotHFile=false) |
| Like above but accepts an unnamed buffer. | |
| std::string | clang::format::configurationAsText (const FormatStyle &Style) |
| Gets configuration in a YAML string. | |
| tooling::Replacements | clang::format::sortIncludes (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName, unsigned *Cursor=nullptr) |
| Returns the replacements necessary to sort all #include blocks that are affected by Ranges. | |
| Expected< tooling::Replacements > | clang::format::formatReplacements (StringRef Code, const tooling::Replacements &Replaces, const FormatStyle &Style) |
Returns the replacements corresponding to applying and formatting Replaces on success; otheriwse, return an llvm::Error carrying llvm::StringError. | |
| Expected< tooling::Replacements > | clang::format::cleanupAroundReplacements (StringRef Code, const tooling::Replacements &Replaces, const FormatStyle &Style) |
Returns the replacements corresponding to applying Replaces and cleaning up the code after that on success; otherwise, return an llvm::Error carrying llvm::StringError. | |
| tooling::Replacements | clang::format::reformat (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName="<stdin>", FormattingAttemptStatus *Status=nullptr) |
Reformats the given Ranges in Code. | |
| tooling::Replacements | clang::format::reformat (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName, bool *IncompleteFormat) |
| Same as above, except if IncompleteFormat is non-null, its value will be set to true if any of the affected ranges were not formatted due to a non-recoverable syntax error. | |
| tooling::Replacements | clang::format::cleanup (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName="<stdin>") |
Clean up any erroneous/redundant code in the given Ranges in Code. | |
| tooling::Replacements | clang::format::fixNamespaceEndComments (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName="<stdin>") |
Fix namespace end comments in the given Ranges in Code. | |
| tooling::Replacements | clang::format::separateDefinitionBlocks (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName="<stdin>") |
Inserts or removes empty lines separating definition blocks including classes, structs, functions, namespaces, and enums in the given Ranges in Code. | |
| tooling::Replacements | clang::format::sortUsingDeclarations (const FormatStyle &Style, StringRef Code, ArrayRef< tooling::Range > Ranges, StringRef FileName="<stdin>") |
Sort consecutive using declarations in the given Ranges in Code. | |
| LangOptions | clang::format::getFormattingLangOpts (const FormatStyle &Style=getLLVMStyle()) |
| Returns the LangOpts that the formatter expects you to set. | |
| Expected< FormatStyle > | clang::format::getStyle (StringRef StyleName, StringRef FileName, StringRef FallbackStyle, StringRef Code="", llvm::vfs::FileSystem *FS=nullptr, bool AllowUnknownOptions=false, llvm::SourceMgr::DiagHandlerTy DiagHandler=nullptr) |
| Construct a FormatStyle based on StyleName. | |
| FormatStyle::LanguageKind | clang::format::guessLanguage (StringRef FileName, StringRef Code) |
| StringRef | clang::format::getLanguageName (FormatStyle::LanguageKind Language) |
| bool | clang::format::isClangFormatOn (StringRef Comment) |
| bool | clang::format::isClangFormatOff (StringRef Comment) |
Variables | |
| const char * | clang::format::StyleOptionHelpDescription |
| Description to be used for help text for a llvm::cl option for specifying format style. | |
| const char * | clang::format::DefaultFormatStyle = "file" |
| The suggested format style to use by default. | |
| const char * | clang::format::DefaultFallbackStyle = "LLVM" |
| The suggested predefined style to use as the fallback style in getStyle. | |
Various functions to configurably format source code.
Definition in file Format.h.