#![no_std]
#![allow(clippy::new_without_default)]
#![feature(
    iter_array_chunks,
    maybe_uninit_slice,
    maybe_uninit_as_bytes,
    maybe_uninit_write_slice,
    maybe_uninit_fill
)]

extern crate alloc;

pub mod bus;
pub mod communication;
pub mod descriptor;
pub mod device;
pub mod error;
pub mod info;
pub mod pipe;
pub mod util;

pub mod class_driver;

// pub use communication::{UsbControlTransfer, UsbDirection, UsbTransferStatus, UsbTransferToken};

pub trait UsbEndpoint: Sync {}

pub trait UsbHostController: Sync + Send {}
