use core::fmt::Debug;
use iceoryx2_bb_elementary_traits::testing::abandonable::Abandonable;
use iceoryx2_cal::shm_allocator::bump_allocator::BumpAllocator;
use iceoryx2_cal::shm_allocator::pool_allocator::PoolAllocator;
use iceoryx2_cal::*;
#[derive(Debug, Clone)]
pub struct Service {}
impl crate::service::Service for Service {
type StaticStorage = static_storage::recommended::Local;
type ConfigSerializer = serialize::recommended::Recommended;
type PersistentDynamicStorage<T: Debug + Send + Sync + 'static> =
dynamic_storage::recommended::PersistentLocal<T>;
type DynamicStorage<T: Debug + Send + Sync + 'static> = dynamic_storage::recommended::Local<T>;
type ServiceNameHasher = hash::recommended::Recommended;
type SharedMemory = shared_memory::recommended::Local<PoolAllocator>;
type ResizableSharedMemory = resizable_shared_memory::recommended::Local<PoolAllocator>;
type Connection = zero_copy_connection::recommended::Local;
type Event = event::recommended::Local;
type Monitoring = monitoring::recommended::Local;
type Reactor = reactor::recommended::Local;
type ArcThreadSafetyPolicy<T: Send + Debug + Abandonable> =
arc_sync_policy::mutex_protected::MutexProtected<T>;
type BlackboardMgmt<KeyType: Send + Sync + Debug + 'static> =
dynamic_storage::recommended::Local<KeyType>;
type BlackboardPayload = shared_memory::recommended::Local<BumpAllocator>;
}
impl crate::service::internal::ServiceInternal<Service> for Service {}