Skip to main content

linsight_core/
error.rs

1// SPDX-FileCopyrightText: 2026 VisorCraft LLC
2// SPDX-License-Identifier: GPL-3.0-only
3
4use thiserror::Error;
5
6pub type CoreResult<T> = Result<T, CoreError>;
7
8/// Library-wide error type.
9#[derive(Debug, Error)]
10pub enum CoreError {
11    #[error("invalid sensor id: {0}")]
12    InvalidSensorId(String),
13
14    #[error("i/o: {0}")]
15    Io(String),
16}
17
18#[cfg(test)]
19mod tests {
20    use super::*;
21
22    #[test]
23    fn invalid_sensor_id_display() {
24        let e = CoreError::InvalidSensorId("oops".into());
25        assert_eq!(e.to_string(), "invalid sensor id: oops");
26    }
27}