oasis_runtime_sdk/modules/rofl/
error.rs

1use crate::{dispatcher, modules};
2
3use super::MODULE_NAME;
4
5/// Errors emitted by the module.
6#[derive(thiserror::Error, Debug, oasis_runtime_sdk_macros::Error)]
7pub enum Error {
8    #[error("invalid argument")]
9    #[sdk_error(code = 1)]
10    InvalidArgument,
11
12    #[error("unknown application")]
13    #[sdk_error(code = 2)]
14    UnknownApp,
15
16    #[error("tx not signed by RAK")]
17    #[sdk_error(code = 3)]
18    NotSignedByRAK,
19
20    #[error("tx not signed by extra key")]
21    #[sdk_error(code = 4)]
22    NotSignedByExtraKey,
23
24    #[error("unknown enclave")]
25    #[sdk_error(code = 5)]
26    UnknownEnclave,
27
28    #[error("unknown node")]
29    #[sdk_error(code = 6)]
30    UnknownNode,
31
32    #[error("endorsement from given node not allowed")]
33    #[sdk_error(code = 7)]
34    NodeNotAllowed,
35
36    #[error("registration expired")]
37    #[sdk_error(code = 8)]
38    RegistrationExpired,
39
40    #[error("extra key update not allowed")]
41    #[sdk_error(code = 9)]
42    ExtraKeyUpdateNotAllowed,
43
44    #[error("application already exists")]
45    #[sdk_error(code = 10)]
46    AppAlreadyExists,
47
48    #[error("forbidden")]
49    #[sdk_error(code = 11)]
50    Forbidden,
51
52    #[error("unknown instance")]
53    #[sdk_error(code = 12)]
54    UnknownInstance,
55
56    #[error("must use non-plain call format")]
57    #[sdk_error(code = 13)]
58    PlainCallFormatNotAllowed,
59
60    #[error("core: {0}")]
61    #[sdk_error(transparent)]
62    Core(#[from] modules::core::Error),
63
64    #[error("accounts: {0}")]
65    #[sdk_error(transparent)]
66    Accounts(#[from] modules::accounts::Error),
67
68    #[error("{0}")]
69    #[sdk_error(transparent, abort)]
70    Abort(#[source] dispatcher::Error),
71}