clang 20.0.0git
Namespaces | Functions
SourceCode.h File Reference
#include "clang/AST/ASTContext.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/Basic/TokenKinds.h"
#include <optional>

Go to the source code of this file.

Namespaces

namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
 
namespace  clang::tooling
 

Functions

CharSourceRange clang::tooling::maybeExtendRange (CharSourceRange Range, tok::TokenKind Terminator, ASTContext &Context)
 Extends Range to include the token Terminator, if it immediately follows the end of the range.
 
template<typename T >
CharSourceRange clang::tooling::getExtendedRange (const T &Node, tok::TokenKind Next, ASTContext &Context)
 Returns the source range spanning the node, extended to include Next, if it immediately follows Node.
 
CharSourceRange clang::tooling::getAssociatedRange (const Decl &D, ASTContext &Context)
 Returns the logical source range of the node extended to include associated comments and whitespace before and after the node, and associated terminators.
 
StringRef clang::tooling::getText (CharSourceRange Range, const ASTContext &Context)
 Returns the source-code text in the specified range.
 
template<typename T >
StringRef clang::tooling::getText (const T &Node, const ASTContext &Context)
 Returns the source-code text corresponding to Node.
 
template<typename T >
StringRef clang::tooling::getExtendedText (const T &Node, tok::TokenKind Next, ASTContext &Context)
 Returns the source text of the node, extended to include Next, if it immediately follows the node.
 
llvm::Error clang::tooling::validateEditRange (const CharSourceRange &Range, const SourceManager &SM)
 Determines whether Range is one that can be edited by a rewrite; generally, one that starts and ends within a particular file.
 
llvm::Error clang::tooling::validateRange (const CharSourceRange &Range, const SourceManager &SM, bool AllowSystemHeaders)
 Determines whether Range is one that can be read from.
 
std::optional< CharSourceRangeclang::tooling::getFileRangeForEdit (const CharSourceRange &EditRange, const SourceManager &SM, const LangOptions &LangOpts, bool IncludeMacroExpansion=true)
 Attempts to resolve the given range to one that can be edited by a rewrite; generally, one that starts and ends within a particular file.
 
std::optional< CharSourceRange > clang::tooling::getFileRangeForEdit (const CharSourceRange &EditRange, const ASTContext &Context, bool IncludeMacroExpansion=true)
 
std::optional< CharSourceRangeclang::tooling::getFileRange (const CharSourceRange &EditRange, const SourceManager &SM, const LangOptions &LangOpts, bool IncludeMacroExpansion)
 Attempts to resolve the given range to one that starts and ends in a particular file.
 
std::optional< CharSourceRange > clang::tooling::getFileRange (const CharSourceRange &EditRange, const ASTContext &Context, bool IncludeMacroExpansion)