//! Stack configuration trait.
use crate;
use crate::;
// TODO: Use associated type defaults in the trait once stable
// https://github.com/rust-lang/rust/issues/29661
/// Trait for Rubble stack configurations.
///
/// This trait defines a number of types to be used throughout the layers of the BLE stack, which
/// define capabilities, data structures, data, and hardware interface types to be used.
///
/// Every application must define a type implementing this trait and supply it to the stack.
// Helper aliases to make accessing producer/consumer more convenient.
pub type ConfProducer<C> = Producer;
pub type ConfConsumer<C> = Consumer;
// (`C::PacketQueue::Producer` should work, but doesn't)
// (see: https://github.com/rust-lang/rust/issues/22519)