Union DataType
#include <bt.h>
A DataType can be either an PageID or a RecordID.
union DataType { PageID pid; RecordID rid; };
The pid field is used when the B+-tree node that contains a KeyDataType pair is an internal node, while rid field is used when the node is a leaf node.