1 //===- ClangDiagnosticsEmitter.h - Generate Clang diagnostics tables -*- C++ -*-
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // These tablegen backends emit Clang diagnostics tables.
12 //===----------------------------------------------------------------------===//
14 #ifndef CLANGDIAGS_EMITTER_H
15 #define CLANGDIAGS_EMITTER_H
17 #include "TableGenBackend.h"
21 /// ClangDiagsDefsEmitter - The top-level class emits .def files containing
22 /// declarations of Clang diagnostics.
24 class ClangDiagsDefsEmitter
: public TableGenBackend
{
25 RecordKeeper
&Records
;
26 const std::string
& Component
;
28 explicit ClangDiagsDefsEmitter(RecordKeeper
&R
, const std::string
& component
)
29 : Records(R
), Component(component
) {}
31 // run - Output the .def file contents
32 void run(raw_ostream
&OS
);
35 class ClangDiagGroupsEmitter
: public TableGenBackend
{
36 RecordKeeper
&Records
;
38 explicit ClangDiagGroupsEmitter(RecordKeeper
&R
) : Records(R
) {}
40 void run(raw_ostream
&OS
);
44 } // End llvm namespace