Skip to main content

hyperlane_cli/sync/
enum.rs

1use super::*;
2
3/// Error types for sync operation
4#[derive(Debug, thiserror::Error)]
5pub enum SyncError {
6    /// Failed to parse Cargo.toml
7    #[error("Failed to parse Cargo.toml")]
8    ManifestParseError,
9    /// Failed to serialize Cargo.toml
10    #[error("Failed to serialize Cargo.toml")]
11    ManifestSerializeError,
12    /// Workspace package version not found
13    #[error("workspace.package.version not found in {0}")]
14    WorkspaceVersionMissing(String),
15    /// Workspace members list not found
16    #[error("workspace.members not found in {0}")]
17    WorkspaceMembersMissing(String),
18    /// Member crate Cargo.toml is missing
19    #[error("member crate Cargo.toml not found: {0}")]
20    MemberManifestMissing(String),
21    /// Member crate name not found
22    #[error("member crate [package].name not found in {0}")]
23    MemberNameMissing(String),
24    /// IO error
25    #[error("IO error: {0}")]
26    IoError(#[from] io::Error),
27}