oag_core/parse/
response.rs1use indexmap::IndexMap;
2use serde::{Deserialize, Serialize};
3
4use super::media_type::MediaType;
5
6#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
8pub struct Response {
9 pub description: String,
10
11 #[serde(default, skip_serializing_if = "IndexMap::is_empty")]
12 pub content: IndexMap<String, MediaType>,
13
14 #[serde(default, skip_serializing_if = "IndexMap::is_empty")]
15 pub headers: IndexMap<String, serde_json::Value>,
16}
17
18#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
20#[serde(untagged)]
21pub enum ResponseOrRef {
22 Ref {
23 #[serde(rename = "$ref")]
24 ref_path: String,
25 },
26 Response(Response),
27}