17e2e9c0cSopenharmony_ciuse serde_derive::Deserialize; 27e2e9c0cSopenharmony_ci 37e2e9c0cSopenharmony_ci#[derive(Deserialize)] 47e2e9c0cSopenharmony_cipub struct Nested; 57e2e9c0cSopenharmony_ci 67e2e9c0cSopenharmony_ci#[derive(Deserialize)] 77e2e9c0cSopenharmony_cipub enum ExternallyTagged { 87e2e9c0cSopenharmony_ci Flatten { 97e2e9c0cSopenharmony_ci #[serde(flatten)] 107e2e9c0cSopenharmony_ci nested: Nested, 117e2e9c0cSopenharmony_ci string: &'static str, 127e2e9c0cSopenharmony_ci }, 137e2e9c0cSopenharmony_ci} 147e2e9c0cSopenharmony_ci 157e2e9c0cSopenharmony_ci#[derive(Deserialize)] 167e2e9c0cSopenharmony_ci#[serde(tag = "tag")] 177e2e9c0cSopenharmony_cipub enum InternallyTagged { 187e2e9c0cSopenharmony_ci Flatten { 197e2e9c0cSopenharmony_ci #[serde(flatten)] 207e2e9c0cSopenharmony_ci nested: Nested, 217e2e9c0cSopenharmony_ci string: &'static str, 227e2e9c0cSopenharmony_ci }, 237e2e9c0cSopenharmony_ci} 247e2e9c0cSopenharmony_ci 257e2e9c0cSopenharmony_ci#[derive(Deserialize)] 267e2e9c0cSopenharmony_ci#[serde(tag = "tag", content = "content")] 277e2e9c0cSopenharmony_cipub enum AdjacentlyTagged { 287e2e9c0cSopenharmony_ci Flatten { 297e2e9c0cSopenharmony_ci #[serde(flatten)] 307e2e9c0cSopenharmony_ci nested: Nested, 317e2e9c0cSopenharmony_ci string: &'static str, 327e2e9c0cSopenharmony_ci }, 337e2e9c0cSopenharmony_ci} 347e2e9c0cSopenharmony_ci 357e2e9c0cSopenharmony_ci#[derive(Deserialize)] 367e2e9c0cSopenharmony_ci#[serde(untagged)] 377e2e9c0cSopenharmony_cipub enum UntaggedWorkaround { 387e2e9c0cSopenharmony_ci Flatten { 397e2e9c0cSopenharmony_ci #[serde(flatten)] 407e2e9c0cSopenharmony_ci nested: Nested, 417e2e9c0cSopenharmony_ci string: &'static str, 427e2e9c0cSopenharmony_ci }, 437e2e9c0cSopenharmony_ci} 44