Still on the I want to get `.set` to work train:

```rust
impl<'a, REG, const WI: u8, FI, const MAX: u64> FieldWriter<'a, REG, WI, FI, RangeTo<MAX>>
where
    REG: Writable + RegisterSpec,
    FI: FieldSpec,
    REG::Ux: From<FI::Ux>,
    u64: From<FI::Ux>,
```

Seems to be what is required for

```rust
pub fn set(self, value: FI::Ux) -> &'a mut W<REG>
```

```rust
pub type DoutW<'a, REG> = crate::FieldWriter<'a, REG, 6>;
pub struct PortbDoutSpec;
impl crate::RegisterSpec for PortbDoutSpec {
    type Ux = u32;
}
#[doc = "`write(|w| ..)` method takes [`portb_dout::W`](W) writer structure"]
impl crate::Writable for PortbDoutSpec {
    type Safety = crate::Unsafe;
    const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
    const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
}
```

I feel like I'm a bit stuck and hindered by my lack of understanding Rust's type system and svd2rust generics