rusto-mnn 0.1.7

Safe Rust bindings to MNN library
use thiserror::Error;

#[derive(Error, Debug, Clone)]
pub enum MNNError {
    #[error("Failed to create interpreter: {0}")]
    InterpreterCreation(String),
    
    #[error("Failed to create session: {0}")]
    SessionCreation(String),
    
    #[error("Failed to get tensor: {0}")]
    TensorAccess(String),
    
    #[error("Invalid input shape: {0}")]
    InvalidShape(String),
    
    #[error("Failed to copy tensor data: {0}")]
    TensorCopy(String),
    
    #[error("Failed to run session: {0}")]
    SessionRun(String),
    
    #[error("Null pointer error: {0}")]
    NullPointer(String),
    
    #[error("Internal error: {0}")]
    Internal(String),
}

pub type Result<T> = std::result::Result<T, MNNError>;