public static TreePage[] AllocateTrees(this ILowLevelTransaction tx, int pagerId, uint count) { var pages = tx.AllocatePage(pagerId, count); var treePages = new TreePage[count]; for (var i = 0; i < treePages.Length; i++) { treePages[i] = pages[i].AsTree(); } return(treePages); }
public static OverflowPage[] AllocateOverflows(this ILowLevelTransaction tx, int pagerId, uint count) { var pages = tx.AllocatePage(pagerId, count); var overflows = new OverflowPage[count]; for (var i = 0; i < overflows.Length; i++) { if (i == 0) { overflows[i] = pages[i].AsOverflow(); continue; } overflows[i] = pages[i].AsOverflow(); overflows[i - 1].Header.NextPageNumber = overflows[i].PageNumber; } return(overflows); }