statsig-rust 0.19.1-beta.2604130314

Statsig Rust SDK for usage in multi-user server environments.
Documentation
use crate::{dyn_value, DynamicValue};

pub enum UnitID {
    String(String),
    Float(f64),
    Int(i64),
}

impl From<&str> for UnitID {
    fn from(value: &str) -> Self {
        UnitID::String(value.into())
    }
}

impl From<String> for UnitID {
    fn from(value: String) -> Self {
        UnitID::String(value)
    }
}

impl From<&String> for UnitID {
    fn from(value: &String) -> Self {
        UnitID::String(value.clone())
    }
}

impl From<f64> for UnitID {
    fn from(value: f64) -> Self {
        UnitID::Float(value)
    }
}

impl From<i64> for UnitID {
    fn from(value: i64) -> Self {
        UnitID::Int(value)
    }
}

impl From<UnitID> for DynamicValue {
    fn from(value: UnitID) -> Self {
        match value {
            UnitID::String(s) => dyn_value!(s),
            UnitID::Float(f) => dyn_value!(f),
            UnitID::Int(i) => dyn_value!(i),
        }
    }
}