pytorch_reader/nested/
adapter.rs1use super::data::NestedValue;
2
3pub trait BurnModuleAdapter: Sized {
7 fn adapt(name: &str, data: NestedValue) -> NestedValue {
9 match name {
10 "BatchNorm" => Self::adapt_batch_norm(data),
11 "Conv1d" => Self::adapt_conv1d(data),
12 "Conv2d" => Self::adapt_conv2d(data),
13 "Conv3d" => Self::adapt_conv3d(data),
14 "ConvTranspose1d" => Self::adapt_conv_transpose_1d(data),
15 "ConvTranspose2d" => Self::adapt_conv_transpose_2d(data),
16 "ConvTranspose3d" => Self::adapt_conv_transpose_3d(data),
17 "Embedding" => Self::adapt_embedding(data),
18 "GroupNorm" => Self::adapt_group_norm(data),
19 "LayerNorm" => Self::adapt_layer_norm(data),
20 "Linear" => Self::adapt_linear(data),
21 _ => data,
22 }
23 }
24
25 fn adapt_linear(data: NestedValue) -> NestedValue {
27 data
28 }
29
30 fn adapt_conv1d(data: NestedValue) -> NestedValue {
32 data
33 }
34
35 fn adapt_conv2d(data: NestedValue) -> NestedValue {
37 data
38 }
39
40 fn adapt_conv3d(data: NestedValue) -> NestedValue {
42 data
43 }
44
45 fn adapt_conv_transpose_1d(data: NestedValue) -> NestedValue {
47 data
48 }
49
50 fn adapt_conv_transpose_2d(data: NestedValue) -> NestedValue {
52 data
53 }
54
55 fn adapt_conv_transpose_3d(data: NestedValue) -> NestedValue {
57 data
58 }
59
60 fn adapt_embedding(data: NestedValue) -> NestedValue {
62 data
63 }
64
65 fn adapt_group_norm(data: NestedValue) -> NestedValue {
67 data
68 }
69
70 fn adapt_layer_norm(data: NestedValue) -> NestedValue {
72 data
73 }
74
75 fn adapt_batch_norm(data: NestedValue) -> NestedValue {
77 data
78 }
79}
80
81pub struct DefaultAdapter;
83impl BurnModuleAdapter for DefaultAdapter {}