We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
2 parents 922c557 + a569dd8 commit ddcd68fCopy full SHA for ddcd68f
src/structures/paging/page_table.rs
@@ -389,6 +389,16 @@ impl PageTableLevel {
389
}
390
391
392
+ /// Returns the next higher level or `None` for level 4
393
+ pub const fn next_higher_level(self) -> Option<Self> {
394
+ match self {
395
+ PageTableLevel::Four => None,
396
+ PageTableLevel::Three => Some(PageTableLevel::Four),
397
+ PageTableLevel::Two => Some(PageTableLevel::Three),
398
+ PageTableLevel::One => Some(PageTableLevel::Two),
399
+ }
400
401
+
402
/// Returns the alignment for the address space described by a table of this level.
403
pub const fn table_address_space_alignment(self) -> u64 {
404
1u64 << (self as u8 * 9 + 12)
0 commit comments