unc-sdk 2.3.2

Rust library for writing Utility smart contracts.
Documentation
//! Method with non-deserializable argument type.

use unc_sdk::unc;
use std::collections::HashMap;

#[derive(
    Eq, PartialEq, Hash, PartialOrd, Ord,
)]
#[unc(serializers=[borsh, json])]
pub enum TypeA {
    Var1,
    Var2,
}

#[derive(
    Eq, PartialEq, Hash, PartialOrd
)]
#[unc(serializers=[borsh, json])]
pub enum TypeB {
    Var1,
    Var2,
}

#[unc(contract_state)]
#[derive(Default)]
struct Storage {
    map: HashMap<TypeA, TypeB>,
}

#[unc]
impl Storage {
    pub fn get(&self, key: &TypeA) -> &TypeB {
        self.map.get(key).unwrap()
    }
}

fn main() {}