veer 0.1.1

Inertia.js v3 server-side protocol superset for Rust
Documentation
//! Crate error type.

use thiserror::Error;

/// Errors returned by `veer` APIs.
#[derive(Debug, Error)]
pub enum VeerError {
    /// Serialization of the page object or props failed.
    #[error("serialization failed: {0}")]
    Serialize(#[from] serde_json::Error),

    /// The configured root view failed to render.
    #[error("root view render failed: {0}")]
    RootView(String),

    /// The SSR client returned an error and SSR was required.
    #[error("ssr render failed: {0}")]
    Ssr(String),

    /// The session store returned an error.
    #[error("session store error: {0}")]
    Session(String),

    /// A header was present but malformed.
    #[error("invalid header `{name}`: {reason}")]
    BadHeader {
        /// The header name.
        name: &'static str,
        /// The reason the header was rejected.
        reason: String,
    },
}