1 #ifndef _KERNEL_REGION_H
2 #define _KERNEL_REGION_H
4 #include <System/Mem.h>
6 // Overlapping regions are not well ordered.
8 static inline bool operator <(::System::Mem::Region &left,
9 ::System::Mem::Region &right)
11 return left.start < right.start;
14 static inline bool operator <(::System::Mem::Region &left, uint64_t right)
16 return left.end < right;
19 static inline bool operator >(::System::Mem::Region &left, uint64_t right)
21 return left.start > right;
25 static inline ::System::Mem::RegionWithOffset
26 add_offset(::System::Mem::Region ®ion)
28 ::System::Mem::RegionWithOffset ret;
29 ret.start = region.start;
35 static inline ::System::Mem::Region
36 remove_offset(::System::Mem::RegionWithOffset ®ion)
38 ::System::Mem::Region ret;
39 ret.start = region.start;