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
use cargo_subcommand::Error as SubcommandError;
use ndk_build::error::NdkError;
use std::io::Error as IoError;
use thiserror::Error;
use toml::de::Error as TomlError;
#[derive(Debug, Error)]
pub enum Error {
#[error(transparent)]
Subcommand(#[from] SubcommandError),
#[error("Failed to parse config.")]
Config(#[from] TomlError),
#[error(transparent)]
Ndk(#[from] NdkError),
#[error(transparent)]
Io(#[from] IoError),
#[error("Configure a release keystore via `[package.metadata.android.signing.{0}]`")]
MissingReleaseKey(String),
}
impl Error {
pub fn invalid_args() -> Self {
Self::Subcommand(SubcommandError::InvalidArgs)
}
}