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 26 27 28 29 30 31 32 33 34 35 36 37 38 39
//! Module exposing errors and result types for the session API.
use frame_support::sp_runtime::DispatchError;
use thiserror::Error;
/// Session specific errors.
#[derive(Error, Debug)]
pub enum SessionError {
/// Encoding data failed.
#[error("Encoding call data failed: {0}")]
Encoding(String),
/// Decoding data failed.
#[error("Decoding call data failed: {0}")]
Decoding(String),
/// Crate-specific error.
#[error("{0:?}")]
Drink(#[from] crate::Error),
/// Deployment has been reverted by the contract.
#[error("Contract deployment has been reverted")]
DeploymentReverted,
/// Deployment failed (aborted by the pallet).
#[error("Contract deployment failed before execution: {0:?}")]
DeploymentFailed(DispatchError),
/// Code upload failed (aborted by the pallet).
#[error("Code upload failed: {0:?}")]
UploadFailed(DispatchError),
/// Call has been reverted by the contract.
#[error("Contract call has been reverted")]
CallReverted,
/// Contract call failed (aborted by the pallet).
#[error("Contract call failed before execution: {0:?}")]
CallFailed(DispatchError),
/// There is no deployed contract to call.
#[error("No deployed contract")]
NoContract,
/// There is no registered transcoder to encode/decode messages for the called contract.
#[error("Missing transcoder")]
NoTranscoder,
}