pub type R = crate::R<C2ICRrs>;
pub type W = crate::W<C2ICRrs>;
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
pub enum ISC0R {
NoEffect = 0,
}
impl From<ISC0R> for bool {
#[inline(always)]
fn from(variant: ISC0R) -> Self {
variant as u8 != 0
}
}
pub type ISC_R = crate::BitReader<ISC0R>;
impl ISC_R {
#[inline(always)]
pub const fn variant(&self) -> Option<ISC0R> {
match self.bits {
false => Some(ISC0R::NoEffect),
_ => None,
}
}
#[inline(always)]
pub fn is_no_effect(&self) -> bool {
*self == ISC0R::NoEffect
}
}
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
pub enum ISC0W {
NoEffect = 0,
Clear = 1,
}
impl From<ISC0W> for bool {
#[inline(always)]
fn from(variant: ISC0W) -> Self {
variant as u8 != 0
}
}
pub type ISC_W<'a, REG> = crate::BitWriter<'a, REG, ISC0W>;
impl<'a, REG> ISC_W<'a, REG>
where
REG: crate::Writable + crate::RegisterSpec,
{
#[inline(always)]
pub fn no_effect(self) -> &'a mut crate::W<REG> {
self.variant(ISC0W::NoEffect)
}
#[inline(always)]
pub fn clear(self) -> &'a mut crate::W<REG> {
self.variant(ISC0W::Clear)
}
}
impl R {
#[inline(always)]
pub fn isc(&self, n: u8) -> ISC_R {
#[allow(clippy::no_effect)]
[(); 32][n as usize];
ISC_R::new(((self.bits >> n) & 1) != 0)
}
#[inline(always)]
pub fn isc_iter(&self) -> impl Iterator<Item = ISC_R> + '_ {
(0..32).map(move |n| ISC_R::new(((self.bits >> n) & 1) != 0))
}
#[inline(always)]
pub fn isc0(&self) -> ISC_R {
ISC_R::new((self.bits & 1) != 0)
}
#[inline(always)]
pub fn isc1(&self) -> ISC_R {
ISC_R::new(((self.bits >> 1) & 1) != 0)
}
#[inline(always)]
pub fn isc2(&self) -> ISC_R {
ISC_R::new(((self.bits >> 2) & 1) != 0)
}
#[inline(always)]
pub fn isc3(&self) -> ISC_R {
ISC_R::new(((self.bits >> 3) & 1) != 0)
}
#[inline(always)]
pub fn isc4(&self) -> ISC_R {
ISC_R::new(((self.bits >> 4) & 1) != 0)
}
#[inline(always)]
pub fn isc5(&self) -> ISC_R {
ISC_R::new(((self.bits >> 5) & 1) != 0)
}
#[inline(always)]
pub fn isc6(&self) -> ISC_R {
ISC_R::new(((self.bits >> 6) & 1) != 0)
}
#[inline(always)]
pub fn isc7(&self) -> ISC_R {
ISC_R::new(((self.bits >> 7) & 1) != 0)
}
#[inline(always)]
pub fn isc8(&self) -> ISC_R {
ISC_R::new(((self.bits >> 8) & 1) != 0)
}
#[inline(always)]
pub fn isc9(&self) -> ISC_R {
ISC_R::new(((self.bits >> 9) & 1) != 0)
}
#[inline(always)]
pub fn isc10(&self) -> ISC_R {
ISC_R::new(((self.bits >> 10) & 1) != 0)
}
#[inline(always)]
pub fn isc11(&self) -> ISC_R {
ISC_R::new(((self.bits >> 11) & 1) != 0)
}
#[inline(always)]
pub fn isc12(&self) -> ISC_R {
ISC_R::new(((self.bits >> 12) & 1) != 0)
}
#[inline(always)]
pub fn isc13(&self) -> ISC_R {
ISC_R::new(((self.bits >> 13) & 1) != 0)
}
#[inline(always)]
pub fn isc14(&self) -> ISC_R {
ISC_R::new(((self.bits >> 14) & 1) != 0)
}
#[inline(always)]
pub fn isc15(&self) -> ISC_R {
ISC_R::new(((self.bits >> 15) & 1) != 0)
}
#[inline(always)]
pub fn isc16(&self) -> ISC_R {
ISC_R::new(((self.bits >> 16) & 1) != 0)
}
#[inline(always)]
pub fn isc17(&self) -> ISC_R {
ISC_R::new(((self.bits >> 17) & 1) != 0)
}
#[inline(always)]
pub fn isc18(&self) -> ISC_R {
ISC_R::new(((self.bits >> 18) & 1) != 0)
}
#[inline(always)]
pub fn isc19(&self) -> ISC_R {
ISC_R::new(((self.bits >> 19) & 1) != 0)
}
#[inline(always)]
pub fn isc20(&self) -> ISC_R {
ISC_R::new(((self.bits >> 20) & 1) != 0)
}
#[inline(always)]
pub fn isc21(&self) -> ISC_R {
ISC_R::new(((self.bits >> 21) & 1) != 0)
}
#[inline(always)]
pub fn isc22(&self) -> ISC_R {
ISC_R::new(((self.bits >> 22) & 1) != 0)
}
#[inline(always)]
pub fn isc23(&self) -> ISC_R {
ISC_R::new(((self.bits >> 23) & 1) != 0)
}
#[inline(always)]
pub fn isc24(&self) -> ISC_R {
ISC_R::new(((self.bits >> 24) & 1) != 0)
}
#[inline(always)]
pub fn isc25(&self) -> ISC_R {
ISC_R::new(((self.bits >> 25) & 1) != 0)
}
#[inline(always)]
pub fn isc26(&self) -> ISC_R {
ISC_R::new(((self.bits >> 26) & 1) != 0)
}
#[inline(always)]
pub fn isc27(&self) -> ISC_R {
ISC_R::new(((self.bits >> 27) & 1) != 0)
}
#[inline(always)]
pub fn isc28(&self) -> ISC_R {
ISC_R::new(((self.bits >> 28) & 1) != 0)
}
#[inline(always)]
pub fn isc29(&self) -> ISC_R {
ISC_R::new(((self.bits >> 29) & 1) != 0)
}
#[inline(always)]
pub fn isc30(&self) -> ISC_R {
ISC_R::new(((self.bits >> 30) & 1) != 0)
}
#[inline(always)]
pub fn isc31(&self) -> ISC_R {
ISC_R::new(((self.bits >> 31) & 1) != 0)
}
}
impl core::fmt::Debug for R {
fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
f.debug_struct("C2ICR")
.field("isc0", &self.isc0())
.field("isc1", &self.isc1())
.field("isc2", &self.isc2())
.field("isc3", &self.isc3())
.field("isc4", &self.isc4())
.field("isc5", &self.isc5())
.field("isc6", &self.isc6())
.field("isc7", &self.isc7())
.field("isc8", &self.isc8())
.field("isc9", &self.isc9())
.field("isc10", &self.isc10())
.field("isc11", &self.isc11())
.field("isc12", &self.isc12())
.field("isc13", &self.isc13())
.field("isc14", &self.isc14())
.field("isc15", &self.isc15())
.field("isc16", &self.isc16())
.field("isc17", &self.isc17())
.field("isc18", &self.isc18())
.field("isc19", &self.isc19())
.field("isc20", &self.isc20())
.field("isc21", &self.isc21())
.field("isc22", &self.isc22())
.field("isc23", &self.isc23())
.field("isc24", &self.isc24())
.field("isc25", &self.isc25())
.field("isc26", &self.isc26())
.field("isc27", &self.isc27())
.field("isc28", &self.isc28())
.field("isc29", &self.isc29())
.field("isc30", &self.isc30())
.field("isc31", &self.isc31())
.finish()
}
}
impl W {
#[inline(always)]
pub fn isc(&mut self, n: u8) -> ISC_W<C2ICRrs> {
#[allow(clippy::no_effect)]
[(); 32][n as usize];
ISC_W::new(self, n)
}
#[inline(always)]
pub fn isc0(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 0)
}
#[inline(always)]
pub fn isc1(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 1)
}
#[inline(always)]
pub fn isc2(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 2)
}
#[inline(always)]
pub fn isc3(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 3)
}
#[inline(always)]
pub fn isc4(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 4)
}
#[inline(always)]
pub fn isc5(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 5)
}
#[inline(always)]
pub fn isc6(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 6)
}
#[inline(always)]
pub fn isc7(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 7)
}
#[inline(always)]
pub fn isc8(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 8)
}
#[inline(always)]
pub fn isc9(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 9)
}
#[inline(always)]
pub fn isc10(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 10)
}
#[inline(always)]
pub fn isc11(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 11)
}
#[inline(always)]
pub fn isc12(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 12)
}
#[inline(always)]
pub fn isc13(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 13)
}
#[inline(always)]
pub fn isc14(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 14)
}
#[inline(always)]
pub fn isc15(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 15)
}
#[inline(always)]
pub fn isc16(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 16)
}
#[inline(always)]
pub fn isc17(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 17)
}
#[inline(always)]
pub fn isc18(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 18)
}
#[inline(always)]
pub fn isc19(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 19)
}
#[inline(always)]
pub fn isc20(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 20)
}
#[inline(always)]
pub fn isc21(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 21)
}
#[inline(always)]
pub fn isc22(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 22)
}
#[inline(always)]
pub fn isc23(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 23)
}
#[inline(always)]
pub fn isc24(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 24)
}
#[inline(always)]
pub fn isc25(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 25)
}
#[inline(always)]
pub fn isc26(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 26)
}
#[inline(always)]
pub fn isc27(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 27)
}
#[inline(always)]
pub fn isc28(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 28)
}
#[inline(always)]
pub fn isc29(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 29)
}
#[inline(always)]
pub fn isc30(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 30)
}
#[inline(always)]
pub fn isc31(&mut self) -> ISC_W<C2ICRrs> {
ISC_W::new(self, 31)
}
}
pub struct C2ICRrs;
impl crate::RegisterSpec for C2ICRrs {
type Ux = u32;
}
impl crate::Readable for C2ICRrs {}
impl crate::Writable for C2ICRrs {
type Safety = crate::Unsafe;
}
impl crate::Resettable for C2ICRrs {}