chaste_npm/
error.rs

1// SPDX-FileCopyrightText: 2024 The Chaste Authors
2// SPDX-License-Identifier: Apache-2.0 OR BSD-2-Clause
3
4use std::io;
5
6use thiserror::Error;
7
8#[derive(Debug, Error)]
9#[non_exhaustive]
10pub enum Error {
11    #[error("Dependency {0:?} not found")]
12    DependencyNotFound(String),
13
14    #[error("Workspace member {0:?} not found")]
15    WorkspaceMemberNotFound(String),
16
17    #[error("Unknown lockfile version: {0}")]
18    UnknownLockVersion(u8),
19
20    #[error("Chaste error: {0:?}")]
21    ChasteError(#[from] chaste_types::Error),
22
23    #[error("I/O error: {0:?}")]
24    IoError(#[from] io::Error),
25
26    #[error("Serde error: {0:?}")]
27    SerdeError(#[from] serde_json::Error),
28
29    #[error("SSRI error: {0:?}")]
30    SSRIError(#[from] chaste_types::SSRIError),
31}
32
33pub type Result<T, E = Error> = std::result::Result<T, E>;