qubit-mime 0.5.1

MIME type detection utilities for Rust based on filename glob rules and content magic
Documentation
/*******************************************************************************
 *
 *    Copyright (c) 2026 Haixing Hu.
 *
 *    SPDX-License-Identifier: Apache-2.0
 *
 *    Licensed under the Apache License, Version 2.0.
 *
 ******************************************************************************/
//! Provider contract for pluggable MIME detector implementations.
//!
//! The MIME detector SPI is a domain binding over [`qubit_spi`]. Providers
//! implement [`ServiceProvider<MimeDetectorSpec>`](qubit_spi::ServiceProvider),
//! which supplies descriptor metadata, availability, priority, and detector
//! factories for [`MimeDetectorRegistry`](crate::MimeDetectorRegistry).

use qubit_spi::ServiceProvider;

use super::MimeDetectorSpec;

/// Marker trait for MIME detector providers.
///
/// Implement [`ServiceProvider<MimeDetectorSpec>`](qubit_spi::ServiceProvider)
/// for the concrete provider type. This marker keeps public registry bounds
/// MIME-specific while delegating provider behavior to `qubit-spi`.
pub trait MimeDetectorProvider: ServiceProvider<MimeDetectorSpec> {}

impl<T> MimeDetectorProvider for T where T: ServiceProvider<MimeDetectorSpec> + ?Sized {}