ParseMaps.h is a big improvement over the prior situation, but parts of its implementation are pretty baffling. In particular, there's a nicer way to express what DefnOrHeader is doing.
Created attachment 639063 [details] [diff] [review]
Handy cheat sheet:
DefnOrHeader --> DefinitionList
AtomDeclNode --> DefinitionList::Node
MultiDeclRange --> DefinitionList::Range
doh.isHeader() --> dlist.isMultiple()
AtomDOHMap --> AtomDefnListMap