Pegged should have no problem parsing all of D, at least theoretically (I don't know of any severe ambiguities in D). So IOW, it can probably do what you need it to do.
Oh. I realized that I had missed Pegged announcement by Philippe. I will have a look at it.