fn allocate_from_range(&mut self, num_pages: usize) -> *mut u8 {
        assert!(self.size >= num_pages);

        trace!("Allocating from within range {:?} {}",
               &self as *const _,
               self.size);

        let s = self.size + 1;
        // get start address
        let allocation = unsafe { self.offset((s - num_pages) as isize) };
        self.size -= num_pages;
        allocation
    }
// allocate some subset of the range, or possibly the entire range,
// but leave the Range intact other than updating its slice
allocate some subset of the range, or possibly the entire range,
but leave the Range intact other than updating its slice
allocate some subset of the range or possibly the entire range but leave the Range intact other than updating its slice
fn allocate_from_range(&mut self, num_pages: usize) -> *mut u8 {
        assert!(self.size >= num_pages);
        trace!("Allocating from within range {:?} {}",
               &self as *const _,
               self.size);
        let s = self.size + 1;
        // get start address
        let allocation = unsafe { self.offset((s - num_pages) as isize) };
        self.size -= num_pages;
        allocation
    }
fn allocate_from_range ( & mut self , num_pages : usize ) -> * mut u8 { assert ! ( self size num_pages ) ; trace ! ( " " self as const self size ) ; let s = self . size + 1 ; // get start address let allocation = unsafe { self . offset ( ( s - num_pages ) as isize ) } ; self . size -= num_pages ; allocation }
allocate some subset of the range, or possibly the entire range,
but leave the Range intact other than updating its slice
allocate some subset of the range or possibly the entire range but leave the Range intact other than updating its slice
&mut self
num_pages
usize
&mut self
num_pages
usize