///Register `M4ERKEYR` writer
pub type W = crate::W<M4ERKEYRrs>;
///Field `ERASEKEY` writer - Erase write protection key
pub type ERASEKEY_W<'a, REG> = crate::FieldWriter<'a, REG, 8>;
impl core::fmt::Debug for crate::generic::Reg<M4ERKEYRrs> {
    fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
        write!(f, "(not readable)")
    }
}
impl W {
    ///Bits 0:7 - Erase write protection key
    #[inline(always)]
    pub fn erasekey(&mut self) -> ERASEKEY_W<M4ERKEYRrs> {
        ERASEKEY_W::new(self, 0)
    }
}
/**RAMCFG memory 4 erase key register

You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`m4erkeyr::W`](W). See [API](https://docs.rs/svd2rust/#read--modify--write-api).*/
pub struct M4ERKEYRrs;
impl crate::RegisterSpec for M4ERKEYRrs {
    type Ux = u32;
}
///`write(|w| ..)` method takes [`m4erkeyr::W`](W) writer structure
impl crate::Writable for M4ERKEYRrs {
    type Safety = crate::Unsafe;
    const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
    const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
}
///`reset()` method sets M4ERKEYR to value 0
impl crate::Resettable for M4ERKEYRrs {
    const RESET_VALUE: u32 = 0;
}
