dreid-pack 0.2.0

A high-performance, pure Rust library and CLI for full-atom protein side-chain packing using the DREIDING force field, Goldstein+Split DEE, and tree-decomposition DP—with native protein-ligand and protein-nucleic acid interface support.
Documentation
use thiserror::Error;

/// Errors that can occur during structure file I/O.
#[derive(Debug, Error)]
pub enum Error {
    /// OS-level read or write failure.
    #[error(transparent)]
    Io(#[from] std::io::Error),

    /// PDB/mmCIF bio-structure load failure.
    #[error("parse error: {0}")]
    Parse(String),

    /// MOL2 hetero template parse failure.
    #[error("template parse error: {0}")]
    Template(String),

    /// Force-field parameterization failure.
    #[error("force-field parameterization error: {0}")]
    Forge(String),

    /// Packing scope configuration error.
    #[error("packing scope error: {0}")]
    Scope(String),
}