Skip to main content

line_bot_sdk_messaging_api/models/
flex_container.rs

1/*
2 * LINE Messaging API
3 *
4 * This document describes LINE Messaging API.
5 *
6 * The version of the OpenAPI document: 0.0.1
7 *
8 * Generated by: https://openapi-generator.tech
9 * Post-processed by: post-process-enums-v2.js
10 */
11
12use crate::models;
13use serde::{Deserialize, Serialize};
14
15/// FlexContainer enum using newtype pattern (wraps structs in Box)
16/// This is automatically generated from discriminated schemas
17#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
18#[serde(untagged)]
19pub enum FlexContainer {
20    FlexBubble(Box<models::FlexBubble>),
21    FlexCarousel(Box<models::FlexCarousel>),
22}
23
24impl Default for FlexContainer {
25    fn default() -> Self {
26        Self::FlexBubble(Box::new(Default::default()))
27    }
28}
29
30// Conversion methods from struct types to enum variants
31impl From<models::FlexBubble> for FlexContainer {
32    fn from(value: models::FlexBubble) -> Self {
33        FlexContainer::FlexBubble(Box::new(value))
34    }
35}
36
37impl From<models::FlexCarousel> for FlexContainer {
38    fn from(value: models::FlexCarousel) -> Self {
39        FlexContainer::FlexCarousel(Box::new(value))
40    }
41}