refactor: reduce Iterator methods usage

This commit is contained in:
doryan 2025-05-26 10:24:19 +04:00
parent 5ac1a07c6b
commit 137fcc78e5

View File

@ -38,16 +38,14 @@ impl<const L: usize> UsbBus for UsbDevice<L> {
// If ep_aadr not provided, or current endpoint is allocated, try to find next free endpoint, otherwise return UsbError. //
_ => {
let index = self
.ep_table
let index = self.ep_table[1..]
.iter()
.enumerate()
.skip(1)
.find(|(index, ep)| {
!ep.is_allocated && max_packet_size <= ENDPOINTS_ALLOC_LAYOUT[*index]
})
.ok_or(UsbError::EndpointOverflow)?
.0;
.map(|(index, _)| index)
.ok_or(UsbError::EndpointOverflow)?;
EndpointAddress::from_parts(index, ep_dir)
}