| #[inline(always)] | |
| pub unsafe fn copy_forward(dest: *mut u8, src: *const u8, n: usize) { | |
| let mut i = 0; | |
| while i < n { | |
| *dest.add(i) = *src.add(i); | |
| i += 1; | |
| } | |
| } | |
| #[inline(always)] | |
| pub unsafe fn copy_backward(dest: *mut u8, src: *const u8, n: usize) { | |
| // copy from end | |
| let mut i = n; | |
| while i != 0 { | |
| i -= 1; | |
| *dest.add(i) = *src.add(i); | |
| } | |
| } | |
| #[inline(always)] | |
| pub unsafe fn set_bytes(s: *mut u8, c: u8, n: usize) { | |
| let mut i = 0; | |
| while i < n { | |
| *s.add(i) = c; | |
| i += 1; | |
| } | |
| } |