clang 22.0.0git
HTMLRewrite.cpp File Reference
#include "clang/Rewrite/Core/HTMLRewrite.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/Lex/TokenConcatenation.h"
#include "clang/Rewrite/Core/Rewriter.h"
#include "llvm/ADT/RewriteBuffer.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
#include <memory>

Go to the source code of this file.

Classes

struct  clang::html::RelexRewriteCache
struct  clang::html::RelexRewriteCache::Highlight
struct  clang::html::RelexRewriteCache::RawHighlight

Namespaces

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

Functions

static void AddLineNumber (RewriteBuffer &RB, unsigned LineNo, unsigned B, unsigned E)
static void SyntaxHighlightImpl (Rewriter &R, FileID FID, const Preprocessor &PP, llvm::function_ref< void(RewriteBuffer &, unsigned, unsigned, const char *, const char *, const char *)> HighlightRangeCallback)
 SyntaxHighlight - Relex the specified FileID and annotate the HTML with information about keywords, macro expansions etc.
static void HighlightMacrosImpl (Rewriter &R, FileID FID, const Preprocessor &PP, llvm::function_ref< void(Rewriter &, SourceLocation, SourceLocation, const char *, const char *, bool)> HighlightRangeCallback)

Function Documentation

◆ AddLineNumber()

void AddLineNumber ( RewriteBuffer & RB,
unsigned LineNo,
unsigned B,
unsigned E )
static

Definition at line 236 of file HTMLRewrite.cpp.

Referenced by clang::html::AddLineNumbers().

◆ HighlightMacrosImpl()

void HighlightMacrosImpl ( Rewriter & R,
FileID FID,
const Preprocessor & PP,
llvm::function_ref< void(Rewriter &, SourceLocation, SourceLocation, const char *, const char *, bool)> HighlightRangeCallback )
static

Definition at line 453 of file HTMLRewrite.cpp.

◆ SyntaxHighlightImpl()

void SyntaxHighlightImpl ( Rewriter & R,
FileID FID,
const Preprocessor & PP,
llvm::function_ref< void(RewriteBuffer &, unsigned, unsigned, const char *, const char *, const char *)> HighlightRangeCallback )
static

SyntaxHighlight - Relex the specified FileID and annotate the HTML with information about keywords, macro expansions etc.

This uses the macro table state from the end of the file, so it won't be perfectly perfect, but it will be reasonably close.

Definition at line 332 of file HTMLRewrite.cpp.