[Syntax] Add minimal TableGen for syntax nodes. NFC
authorSam McCall <sam.mccall@gmail.com>
Sat, 31 Oct 2020 20:09:11 +0000 (21:09 +0100)
committerSam McCall <sam.mccall@gmail.com>
Mon, 9 Nov 2020 22:45:50 +0000 (23:45 +0100)
commit55120f74ca12faea0e90fe552c85c14485f1fd91
treec2914a3b78fc0ad4d5d72252197de0c573902829
parent0f62f05655d0dc879bd822b7808f1d3120155e6b
[Syntax] Add minimal TableGen for syntax nodes. NFC

So far, only used to generate Kind and implement classof().

My plan is to have this general-purpose Nodes.inc in the style of AST
DeclNodes.inc etc, and additionally a special-purpose backend generating
the actual class definitions. But baby steps...

Differential Revision: https://reviews.llvm.org/D90540
clang/include/clang/CMakeLists.txt
clang/include/clang/Tooling/Syntax/CMakeLists.txt [new file with mode: 0644]
clang/include/clang/Tooling/Syntax/Nodes.h
clang/include/clang/Tooling/Syntax/Nodes.td [new file with mode: 0644]
clang/include/clang/Tooling/Syntax/Syntax.td [new file with mode: 0644]
clang/lib/Tooling/Syntax/Nodes.cpp
clang/lib/Tooling/Syntax/Tree.cpp
clang/utils/TableGen/CMakeLists.txt
clang/utils/TableGen/ClangSyntaxEmitter.cpp [new file with mode: 0644]
clang/utils/TableGen/TableGen.cpp
clang/utils/TableGen/TableGenBackends.h