• Su Mingxian's avatar
    Update `memory_set` (#3, #4 included) · 46c06e57
    Su Mingxian authored
    * use local `memory_addr` for `memory_set`, update `memory_set`, move generic params of mapping structures into `MappingBackEnd` as associated types
    
    * fix docs
    
    * Enhanced `MemoryAddr` (#4)
    
    * demo: what if we add more bounds to `MemoryAddr`
    
    * remove arithmetic bounds for `MemoryAddr`, add some provided methods
    
    * rename `MemoryAddr::sub_addr` to `MemoryAddr::offset_from`
    
    * remove a wrong bug todo
    
    * add two more functions to `VirtAddr`
    
    * add `add` and `sub` to `MemoryAddr`
    
    * clarify the behavior of arithmetic operations of `MemoryAddr`, add detailed unit tests
    
    * formatted
    
    * add `overflowing_add/sub` to `MemoryAddr`
    
    * add `checked_add/sub` to `MemoryAddr`
    
    * `AddrRange` candidate B: allow malformed ranges and treat them as empty
    
    * doc and tests improvement for `MemoryAddr` and `AddrRange`
    
    * update `PageIter`
    
    * formatted
    
    * even more tests, ready to merge
    
    * switch to `AddrRange` candidate A
    
    * add `sub_addr` series to `MemoryAddr`, improve panic messages in `MemoryAddr` and `AddrRange`
    
    * some small code improvements
    
    * bump version to 0.3.0
    
    * update function calls about address arithmetic operations in `MemoryArea`s and `MemorySet`s
    
    * loosen memory area shrink check
    46c06e57