multiversx_sc/api/managed_types/
managed_type_api.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use crate::api::ErrorApi;

use super::{HandleTypeInfo, ManagedTypeApiImpl, StaticVarApi};

pub trait ManagedTypeApi: HandleTypeInfo + StaticVarApi + ErrorApi + Clone + 'static {
    type ManagedTypeApiImpl: ManagedTypeApiImpl
        + HandleTypeInfo<
            ManagedBufferHandle = Self::ManagedBufferHandle,
            BigIntHandle = Self::BigIntHandle,
            BigFloatHandle = Self::BigFloatHandle,
            EllipticCurveHandle = Self::EllipticCurveHandle,
            ManagedMapHandle = Self::ManagedMapHandle,
        >;

    fn managed_type_impl() -> Self::ManagedTypeApiImpl;
}