gulkana 1.3.3

A simple database
Documentation
use serde::{Deserialize, Serialize};
#[derive(Copy, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct OptStruct<A: Clone, B: Clone> {
    pub a: Option<A>,
    pub b: Option<B>,
}
pub fn new_optstruct_a<A, B>(input: A) -> OptStruct<A, B>
where
    A: std::clone::Clone,
    B: std::clone::Clone,
{
    return OptStruct {
        a: Some(input),
        b: None,
    };
}
pub fn new_optstruct_b<A, B>(input: B) -> OptStruct<A, B>
where
    A: std::clone::Clone,
    B: std::clone::Clone,
{
    return OptStruct {
        a: None,
        b: Some(input),
    };
}
impl<A: std::clone::Clone, B: std::clone::Clone> OptStruct<A, B> {
    pub fn a(&self) -> Option<&A> {
        return self.a.as_ref();
    }
    #[allow(dead_code)]
    pub fn a_mut(&mut self) -> Option<&mut A> {
        return self.a.as_mut();
    }
    pub fn b(&self) -> Option<&B> {
        return self.b.as_ref();
    }
    pub fn b_mut(&mut self) -> Option<&mut B> {
        return self.b.as_mut();
    }
}