/// An executable region of memory. Use [as_function!] to run code from here!
pub struct ExecutableRegion {
    region: MappedRegion,
}

impl ExecutableRegion {
    /// Consumes the [MappedRegion] and marks its memory as read-only and executable.
    pub fn from(region: MappedRegion) -> crate::Result<Self> {
        use libc::{PROT_EXEC, PROT_READ};
