use crate::{Deserialize, Serialize};
pub mod batch_normalization_weight;
pub mod conv_1d_transpose_weight;
pub mod conv_1d_weight;
pub mod conv_2d_transpose_weight;
pub mod conv_2d_weight;
pub mod conv_3d_transpose_weight;
pub mod conv_3d_weight;
pub mod dense_weight;
pub mod depthwise_conv_1d_weight;
pub mod depthwise_conv_2d_weight;
pub mod embedding_weight;
pub mod group_normalization_weight;
pub mod gru_weight;
pub mod instance_normalization_weight;
pub mod layer_normalization_weight;
pub mod lstm_weight;
pub mod p_relu_weight;
pub mod separable_conv_1d_weight;
pub mod separable_conv_2d_weight;
pub mod simple_rnn_weight;
pub use batch_normalization_weight::*;
pub use conv_1d_transpose_weight::*;
pub use conv_1d_weight::*;
pub use conv_2d_transpose_weight::*;
pub use conv_2d_weight::*;
pub use conv_3d_transpose_weight::*;
pub use conv_3d_weight::*;
pub use dense_weight::*;
pub use depthwise_conv_1d_weight::*;
pub use depthwise_conv_2d_weight::*;
pub use embedding_weight::*;
pub use group_normalization_weight::*;
pub use gru_weight::*;
pub use instance_normalization_weight::*;
pub use layer_normalization_weight::*;
pub use lstm_weight::*;
pub use p_relu_weight::*;
pub use separable_conv_1d_weight::*;
pub use separable_conv_2d_weight::*;
pub use simple_rnn_weight::*;
#[allow(clippy::large_enum_variant)]
#[derive(Debug, Clone, Serialize, Deserialize)]
pub enum LayerWeight<'a> {
Dense(DenseLayerWeight<'a>),
SimpleRNN(SimpleRNNLayerWeight<'a>),
LSTM(LSTMLayerWeight<'a>),
GRU(GRULayerWeight<'a>),
Conv1D(Conv1DLayerWeight<'a>),
Conv2D(Conv2DLayerWeight<'a>),
Conv3D(Conv3DLayerWeight<'a>),
SeparableConv2D(SeparableConv2DLayerWeight<'a>),
DepthwiseConv2D(DepthwiseConv2DLayerWeight<'a>),
BatchNormalization(BatchNormalizationLayerWeight<'a>),
LayerNormalization(LayerNormalizationLayerWeight<'a>),
InstanceNormalization(InstanceNormalizationLayerWeight<'a>),
GroupNormalization(GroupNormalizationLayerWeight<'a>),
Empty,
Embedding(EmbeddingLayerWeight<'a>),
Conv1DTranspose(Conv1DTransposeLayerWeight<'a>),
Conv2DTranspose(Conv2DTransposeLayerWeight<'a>),
Conv3DTranspose(Conv3DTransposeLayerWeight<'a>),
PReLU(PReLULayerWeight<'a>),
DepthwiseConv1D(DepthwiseConv1DLayerWeight<'a>),
SeparableConv1D(SeparableConv1DLayerWeight<'a>),
}