melodium_share/
variability.rs1use melodium_common::descriptor::Variability as CommonVariability;
2use serde::{Deserialize, Serialize};
3
4#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
5#[serde(rename_all = "snake_case")]
6#[cfg_attr(feature = "webassembly", derive(tsify::Tsify))]
7#[cfg_attr(feature = "webassembly", tsify(into_wasm_abi, from_wasm_abi))]
8pub enum Variability {
9 Const,
10 Var,
11}
12
13impl Into<CommonVariability> for Variability {
14 fn into(self) -> CommonVariability {
15 match self {
16 Variability::Const => CommonVariability::Const,
17 Variability::Var => CommonVariability::Var,
18 }
19 }
20}
21
22impl Into<CommonVariability> for &Variability {
23 fn into(self) -> CommonVariability {
24 match self {
25 Variability::Const => CommonVariability::Const,
26 Variability::Var => CommonVariability::Var,
27 }
28 }
29}
30
31impl From<&CommonVariability> for Variability {
32 fn from(value: &CommonVariability) -> Self {
33 match value {
34 CommonVariability::Const => Variability::Const,
35 CommonVariability::Var => Variability::Var,
36 }
37 }
38}