server_less_openapi/error.rs
1//! Error types for OpenAPI composition.
2
3use thiserror::Error;
4
5/// Errors that can occur during OpenAPI composition.
6#[derive(Debug, Error)]
7pub enum OpenApiError {
8 /// Schema conflict: same name, different definitions.
9 #[error("Schema conflict for '{name}': defined differently in multiple specs")]
10 SchemaConflict { name: String },
11
12 /// Invalid OpenAPI spec structure.
13 #[error("Invalid OpenAPI spec: {message}")]
14 InvalidSpec { message: String },
15
16 /// JSON serialization error.
17 #[error("JSON error: {0}")]
18 Json(#[from] serde_json::Error),
19}