harmos_storage/signal/error.rs
1/* ***
2 *
3 * Harmos
4 *
5 * SPDX-License-Identifier: Apache-2.0
6 *
7 * ***
8 */
9
10/* === Modules === */
11
12/* === Re-Exports === */
13
14/* === Imports === */
15
16// Standard Library Imports
17
18// Third Party Imports
19
20// Local Imports
21
22/* === Constants === */
23
24/* === Macros === */
25
26/* === Type Aliases === */
27
28pub type Result<T> = std::result::Result<T, Error>;
29
30/* === Structs === */
31
32/* === Enums === */
33
34#[derive(Debug, thiserror::Error)]
35pub enum Error {
36 #[error("signal workspace I/O failed: {0}")]
37 Io(#[from] std::io::Error),
38
39 #[error("invalid signal input: {reason}")]
40 InvalidInput { reason: &'static str },
41
42 #[error("signal computation interrupted")]
43 Interrupted,
44}
45
46/* === Traits === */
47
48/* === Implementations === */
49
50/* === Public Functions === */
51
52/* === Private Functions === */
53
54/* === Tests === */