ideas icon indicating copy to clipboard operation
ideas copied to clipboard

Python C and C++ parsing abstraction layer

Open KOLANICH opened this issue 3 years ago • 1 comments

Project description

There are multiple libs for parsing C and C++ in python, :

  • clang bindings - the best one, but very large, since requires clang
  • https://github.com/CastXML/pygccxml + https://github.com/CastXML/CastXML
  • https://github.com/srcML/srcML - a yet another standalone tool (without a dedicated python lib consuming its output)
  • https://github.com/eliben/pycparser
  • https://github.com/myint/cppclean
  • https://github.com/robotpy/robotpy-cppheaderparser

In other words, BeautifulSoup for C++ AST.

Relevant Technology

https://github.com/git-afsantos/bonsai https://github.com/mbdevpl/transpyle may be helpful

Complexity and required time

Complexity

  • [x] Beginner - This project requires no or little prior knowledge of the technolog(y|ies) specified to contribute to the project

Required time (ETA)

  • [x] Much work - The project will take more than a couple of weeks and serious planning is required

Categories

  • [x] Developer Tooling

KOLANICH avatar Jan 30 '21 16:01 KOLANICH

Have you considered tree sitter bindings for Python?

KritR avatar Nov 09 '23 22:11 KritR