|
@@ -22,14 +22,15 @@ pub struct MemoryMapTag {
|
|
|
}
|
|
|
|
|
|
impl MemoryMapTag {
|
|
|
- /// Return an iterator over all AVAILABLE marked memory areas.
|
|
|
- pub fn memory_areas(&self) -> impl Iterator<Item = &MemoryArea> {
|
|
|
- self.all_memory_areas()
|
|
|
+ /// Return an iterator over all memory areas that have the type
|
|
|
+ /// [`MemoryAreaType::Available`].
|
|
|
+ pub fn available_memory_areas(&self) -> impl Iterator<Item = &MemoryArea> {
|
|
|
+ self.memory_areas()
|
|
|
.filter(|entry| matches!(entry.typ, MemoryAreaType::Available))
|
|
|
}
|
|
|
|
|
|
- /// Return an iterator over all marked memory areas.
|
|
|
- pub fn all_memory_areas(&self) -> impl Iterator<Item = &MemoryArea> {
|
|
|
+ /// Return an iterator over all memory areas.
|
|
|
+ pub fn memory_areas(&self) -> MemoryAreaIter {
|
|
|
let self_ptr = self as *const MemoryMapTag;
|
|
|
let start_area = self.first_area.as_ptr();
|
|
|
|