Here's a final version.
The one thing I don't like about this is having put
PartitionRangeDatumKind in partdefs.h, which forces us to #include that
file in parsenodes.h. I had to do this in order to avoid #including
parsenodes.h in partbounds.h. Now maybe that is not so bad, since that
file isn't *that* widely used anyway; it wouldn't cause any unnecessary
bleeding of parsenodes.h into any other headers. So maybe I'll put the
enum back in parsenodes. Any opinions on that?
I intend to push this this evening.
--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services