Skip to main content

lib_flutter_rust_bridge_codegen/library/misc/
mod.rs

1pub(crate) mod consts;
2
3use serde::{Deserialize, Serialize};
4
5/// Please refer to `TemplateArg` for doc
6#[derive(Debug, Copy, Clone, Eq, PartialEq)]
7pub enum Template {
8    App,
9    Plugin,
10}
11
12#[derive(Debug, Copy, Clone, Eq, PartialEq)]
13pub enum IntegrationBackend {
14    Cargokit,
15    NativeAssets,
16}
17
18#[derive(Debug, Copy, Clone, Eq, PartialEq, Serialize, Deserialize)]
19pub enum FvmInstallMode {
20    Normal,
21    Skip,
22}
23
24impl FvmInstallMode {
25    pub fn from_skip_fvm_install(skip_fvm_install: bool) -> Self {
26        if skip_fvm_install {
27            Self::Skip
28        } else {
29            Self::Normal
30        }
31    }
32}
33
34#[cfg(test)]
35mod tests {
36    use super::*;
37
38    #[test]
39    fn from_skip_fvm_install_maps_cli_flag_to_mode() {
40        assert_eq!(
41            FvmInstallMode::from_skip_fvm_install(false),
42            FvmInstallMode::Normal
43        );
44        assert_eq!(
45            FvmInstallMode::from_skip_fvm_install(true),
46            FvmInstallMode::Skip
47        );
48    }
49}