http-type 18.4.1

A comprehensive Rust type library for HTTP operations and concurrent programming. Provides core HTTP types (Request/Response with builder patterns, Method, HttpStatus, HttpVersion, ContentType, FileExtension with MIME mapping, Cookie parsing/building, HttpUrl parsing, WebSocket frame/opcode, protocol upgrade types, stream/task management, panic handling), thread-safe concurrent wrappers (ArcMutex, ArcRwLock, BoxRwLock, RcRwLock), dynamic dispatch types (BoxAny, RcAny, ArcAny with Send/Sync variants), high-performance hash collections (HashMapXxHash3_64, HashSetXxHash3_64), and static lifetime utilities (BoxLeak, Lifetime trait).
Documentation
use crate::*;

/// Represents detailed information about a panic that has occurred within the server.
///
/// This struct captures essential details about a panic, such as the message,
/// source code location, and payload. It is used by the server's panic handling
/// mechanism and passed to the configured panic hook for custom processing.
#[derive(
    Clone,
    CustomDebug,
    Default,
    Deserialize,
    DisplayDebug,
    Eq,
    Getter,
    PartialEq,
    Serialize,
    Setter,
    New,
)]
pub struct PanicData {
    /// The message associated with the panic.
    /// This is `None` if the panic payload is not a string.
    #[get(pub)]
    #[set(pub(crate))]
    pub(super) message: Option<String>,
    /// The source code location where the panic occurred.
    #[get(pub)]
    #[set(pub(crate))]
    pub(super) location: Option<String>,
    /// The payload of the panic, often a string literal.
    /// The hook attempts to downcast it to a `&str` or `String`.
    #[get(pub)]
    #[set(pub(crate))]
    pub(super) payload: Option<String>,
}