Ways to parse D code.
Dennis
dkorpel at gmail.com
Wed Nov 25 16:50:22 UTC 2020
On Wednesday, 25 November 2020 at 16:27:41 UTC, Jan Hönig wrote:
> What is the "easiest" way to parse D code?
> (...)
> libdparse seems to do it as well with `parseModule` function.
> https://github.com/dlang-community/libdparse/blob/master/src/dparse/parser.d
I recommend libdparse.
> dmd has to do it somewhere as well. Although I don't know
> exactly where. I do know ldc uses dmd's frontend for parsing.
> https://dlang.org/phobos/dmd_parse.html
DMD as a library is still experimental. You can try to use it,
but libdparse is more stable.
> I am also a little confused about who uses what. Does D-Scanner
> use libdparse?
Yes, most tools that parse D code do, including Adam's
documentation generator: https://github.com/adamdruppe/adrdox
Only LDC, GDC and VisualD use the dmd front-end as far as I know.
> Is there a D grammar for pegged?
> https://github.com/PhilippeSigaud/Pegged
Not complete and outdated, but it's a start:
https://github.com/PhilippeSigaud/Pegged/tree/master/examples/dgrammar
More information about the Digitalmars-d-learn
mailing list