/src/task/error.rs
use core::fmt;

#[derive(Debug)]
pub enum TaskError {
    Allocation,
    CapabilityUnavailable,
    TooManyTasks,
}

impl fmt::Display for TaskError {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
        match self {
            TaskError::Allocation => write!(f, "allocation"),
            TaskError::CapabilityUnavailable => write!(f, "capability unavailable"),
            TaskError::TooManyTasks => write!(f, "too many tasks"),
        }
    }
}

impl core::error::Error for TaskError {}