llvm-project/clang/lib/Tooling/Syntax/Pseudo
Sam McCall 7c1ee5e95f [Pseudo] Token/TokenStream, PP directive parser.
The TokenStream class is the representation of the source code that will
be fed into the GLR parser.

This patch allows a "raw" TokenStream to be built by reading source code.
It also supports scanning a TokenStream to find the directive structure.

Next steps (with placeholders in the code): heuristically choosing a
path through #ifs, preprocessing the code by stripping directives and comments.
These will produce a suitable stream to feed into the parser proper.

Differential Revision: https://reviews.llvm.org/D119162
2022-02-23 17:52:02 +01:00
..
CMakeLists.txt [Pseudo] Token/TokenStream, PP directive parser. 2022-02-23 17:52:02 +01:00
Grammar.cpp [pseudo] Implement LRTable. 2022-02-23 09:21:34 +01:00
GrammarBNF.cpp [pseudo] Implement LRTable. 2022-02-23 09:21:34 +01:00
LRGraph.cpp [pseudo] Implement LRGraph 2022-02-09 11:20:07 +01:00
LRTable.cpp Silence some "not all control paths return a value" warnings; NFC 2022-02-23 09:18:56 -05:00
LRTableBuild.cpp [pseudo] Implement LRTable. 2022-02-23 09:21:34 +01:00
Lex.cpp [Pseudo] Token/TokenStream, PP directive parser. 2022-02-23 17:52:02 +01:00
Preprocess.cpp [Pseudo] Token/TokenStream, PP directive parser. 2022-02-23 17:52:02 +01:00
Token.cpp [Pseudo] Token/TokenStream, PP directive parser. 2022-02-23 17:52:02 +01:00
cxx.bnf [syntax][pseudo] Introduce the C++ spec grammar. 2022-02-04 11:58:50 +01:00