runmat-builtins 0.6.2

RunMat built-in functions and standard library components
Documentation
use serde::Serialize;

#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize)]
pub enum BuiltinPortability {
    NativeAndWasm,
    NativeOnly,
    WasmHostBridge,
}

#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize)]
pub enum BuiltinAcceleratorPolicy {
    Forbidden,
    Optional,
    Required,
}

#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize)]
pub enum BuiltinResidencyPolicy {
    Host,
    PreserveInputs,
    ProduceResident,
    GatherToHost,
    Dynamic,
}

#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize)]
pub enum BuiltinFusionPolicy {
    Never,
    Candidate,
    Boundary,
}

#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize)]
pub struct BuiltinPlacementContract {
    pub portability: BuiltinPortability,
    pub accelerator: BuiltinAcceleratorPolicy,
    pub residency: BuiltinResidencyPolicy,
    pub fusion: BuiltinFusionPolicy,
}