003 File Manager
Current Path:
/usr/src/contrib/llvm-project/clang/include/clang/Frontend
usr
/
src
/
contrib
/
llvm-project
/
clang
/
include
/
clang
/
Frontend
/
📁
..
📄
ASTConsumers.h
(1.93 KB)
📄
ASTUnit.h
(34.09 KB)
📄
ChainedDiagnosticConsumer.h
(2.39 KB)
📄
CommandLineSourceLoc.h
(4.25 KB)
📄
CompilerInstance.h
(27.29 KB)
📄
CompilerInvocation.h
(8.85 KB)
📄
DependencyOutputOptions.h
(2.77 KB)
📄
DiagnosticRenderer.h
(6.69 KB)
📄
FrontendAction.h
(11.74 KB)
📄
FrontendActions.h
(9.39 KB)
📄
FrontendDiagnostic.h
(521 B)
📄
FrontendOptions.h
(13.21 KB)
📄
FrontendPluginRegistry.h
(877 B)
📄
LayoutOverrideSource.h
(2.08 KB)
📄
LogDiagnosticPrinter.h
(2.37 KB)
📄
MigratorOptions.h
(877 B)
📄
MultiplexConsumer.h
(3.58 KB)
📄
PCHContainerOperations.h
(527 B)
📄
PrecompiledPreamble.h
(11.83 KB)
📄
PreprocessorOutputOptions.h
(1.58 KB)
📄
SerializedDiagnosticPrinter.h
(1.41 KB)
📄
SerializedDiagnosticReader.h
(4.21 KB)
📄
SerializedDiagnostics.h
(1.47 KB)
📄
TextDiagnostic.h
(4.83 KB)
📄
TextDiagnosticBuffer.h
(2.25 KB)
📄
TextDiagnosticPrinter.h
(1.82 KB)
📄
Utils.h
(8.73 KB)
📄
VerifyDiagnosticConsumer.h
(11.4 KB)
Editing: TextDiagnosticBuffer.h
//===- TextDiagnosticBuffer.h - Buffer Text Diagnostics ---------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This is a concrete diagnostic client, which buffers the diagnostic messages. // //===----------------------------------------------------------------------===// #ifndef LLVM_CLANG_FRONTEND_TEXTDIAGNOSTICBUFFER_H #define LLVM_CLANG_FRONTEND_TEXTDIAGNOSTICBUFFER_H #include "clang/Basic/Diagnostic.h" #include "clang/Basic/SourceLocation.h" #include <cstddef> #include <string> #include <utility> #include <vector> namespace clang { class TextDiagnosticBuffer : public DiagnosticConsumer { public: using DiagList = std::vector<std::pair<SourceLocation, std::string>>; using iterator = DiagList::iterator; using const_iterator = DiagList::const_iterator; private: DiagList Errors, Warnings, Remarks, Notes; /// All - All diagnostics in the order in which they were generated. That /// order likely doesn't correspond to user input order, but it at least /// keeps notes in the right places. Each pair in the vector is a diagnostic /// level and an index into the corresponding DiagList above. std::vector<std::pair<DiagnosticsEngine::Level, size_t>> All; public: const_iterator err_begin() const { return Errors.begin(); } const_iterator err_end() const { return Errors.end(); } const_iterator warn_begin() const { return Warnings.begin(); } const_iterator warn_end() const { return Warnings.end(); } const_iterator remark_begin() const { return Remarks.begin(); } const_iterator remark_end() const { return Remarks.end(); } const_iterator note_begin() const { return Notes.begin(); } const_iterator note_end() const { return Notes.end(); } void HandleDiagnostic(DiagnosticsEngine::Level DiagLevel, const Diagnostic &Info) override; /// FlushDiagnostics - Flush the buffered diagnostics to an given /// diagnostic engine. void FlushDiagnostics(DiagnosticsEngine &Diags) const; }; } // namespace clang #endif // LLVM_CLANG_FRONTEND_TEXTDIAGNOSTICBUFFER_H
Upload File
Create Folder