chaste_npm/
error.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
// SPDX-FileCopyrightText: 2024 The Chaste Authors
// SPDX-License-Identifier: Apache-2.0 OR BSD-2-Clause

use std::io;

use thiserror::Error;

#[derive(Debug, Error)]
#[non_exhaustive]
pub enum Error {
    #[error("Dependency {0:?} not found")]
    DependencyNotFound(String),

    #[error("Workspace member {0:?} not found")]
    WorkspaceMemberNotFound(String),

    #[error("Unknown lockfile version: {0}")]
    UnknownLockVersion(u8),

    #[error("Chaste error: {0:?}")]
    ChasteError(#[from] chaste_types::Error),

    #[error("I/O error: {0:?}")]
    IoError(#[from] io::Error),

    #[error("Serde error: {0:?}")]
    SerdeError(#[from] serde_json::Error),

    #[error("SSRI error: {0:?}")]
    SSRIError(#[from] chaste_types::SSRIError),
}

pub type Result<T, E = Error> = std::result::Result<T, E>;