[all-commits] [llvm/llvm-project] 20e05b: [syntax][pseudo] Add Grammar for the clang pseudo-...

Haojian Wu via All-commits all-commits at lists.llvm.org
Thu Feb 3 02:28:59 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 20e05b9f0ebea35076b96c89257becd35d6de859
      https://github.com/llvm/llvm-project/commit/20e05b9f0ebea35076b96c89257becd35d6de859
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2022-02-03 (Thu, 03 Feb 2022)

  Changed paths:
    A clang/include/clang/Tooling/Syntax/Pseudo/Grammar.h
    M clang/lib/Tooling/Syntax/CMakeLists.txt
    A clang/lib/Tooling/Syntax/Pseudo/CMakeLists.txt
    A clang/lib/Tooling/Syntax/Pseudo/Grammar.cpp
    A clang/lib/Tooling/Syntax/Pseudo/GrammarBNF.cpp
    M clang/unittests/Tooling/Syntax/CMakeLists.txt
    A clang/unittests/Tooling/Syntax/Pseudo/CMakeLists.txt
    A clang/unittests/Tooling/Syntax/Pseudo/GrammarTests.cpp

  Log Message:
  -----------
  [syntax][pseudo] Add Grammar for the clang pseudo-parser

This patch introduces the Grammar class, which is a critial piece for constructing
a tabled-based parser.

As the first patch, the scope is limited to:
  - define base types (symbol, rules) of modeling the grammar
  - construct Grammar by parsing the BNF file (annotations are excluded for now)

Differential Revision: https://reviews.llvm.org/D114790




More information about the All-commits mailing list