Skip to main content

Module error

Module error 

Source
Expand description

Error types.

Every fallible operation returns a domain-specific error enum whose variants carry the offending values. Error aggregates them, so ? works across domains while callers can still match precisely:

use apk::{Error, ValueError, PackageName, PackageNameError};

let error = Error::from(PackageName::try_new("app").unwrap_err());
assert!(matches!(
    error,
    Error::Value(ValueError::PackageName(PackageNameError::TooFewSegments { segments: 1 }))
));

Re-exports§

pub use crate::archive::ZipError;
pub use crate::build::BuildError;
pub use crate::manifest::ManifestError;
pub use crate::native::NativeError;
pub use crate::res::ChunkError;
pub use crate::res::LiteralError;
pub use crate::res::LocaleError;
pub use crate::res::QualifierError;
pub use crate::res::ResourceError;
pub use crate::res::ResourceNameError;
pub use crate::res::ResourceRefError;
pub use crate::res::StringPoolError;
pub use crate::res::TableError;
pub use crate::sign::CoverageError;
pub use crate::sign::JarError;
pub use crate::sign::KeyError;
pub use crate::sign::SignError;
pub use crate::sign::VerifyError;
pub use crate::types::ApiLevelError;
pub use crate::types::ArchivePathError;
pub use crate::types::ClassNameError;
pub use crate::types::LibraryNameError;
pub use crate::types::PackageNameError;
pub use crate::types::PermissionNameError;
pub use crate::types::UnknownAbi;
pub use crate::types::VersionCodeError;
pub use crate::xml::XmlError;

Enums§

Error
Any failure produced by this crate.
FileOperation
The file system operation that failed in Error::File.
ValueError
A value rejected at a typed boundary.

Type Aliases§

Result
A Result defaulting to this crate’s Error.