figment_keyring/error.rs
1// SPDX-License-Identifier: MIT OR Apache-2.0
2
3use thiserror::Error;
4
5/// Result type for keyring operations.
6pub type Result<T> = std::result::Result<T, KeyringError>;
7
8/// Errors that can occur when accessing keyrings.
9#[derive(Debug, Error)]
10pub enum KeyringError {
11 #[error("secret not found: {0}")]
12 NotFound(String),
13
14 #[error("keyring config error: {0}")]
15 ConfigError(String),
16
17 #[error("keyring service unavailable: {0}")]
18 ServiceUnavailable(String),
19
20 #[error("permission denied")]
21 PermissionDenied,
22
23 #[error("backend error: {0}")]
24 BackendError(String),
25}