[−][src]Enum grin_core::core::transaction::Error
Errors thrown by Transaction validation
Variants
Secp(Error)
Underlying Secp256k1 error (signature validation or invalid public key typically)
Keychain(Error)
Underlying keychain related error
KernelSumMismatch
The sum of output minus input commitments does not match the sum of kernel commitments
TooHeavy
Restrict tx total weight.
LockHeight(u64)
Error originating from an invalid lock-height
RangeProof
Range proof validation error
MerkleProof
Error originating from an invalid Merkle proof
InvalidProofMessage
Returns if the value hidden within the a RangeProof message isn't repeated 3 times, indicating it's incorrect
Committed(Error)
Error when verifying kernel sums via committed trait.
AggregationError
Error when sums do not verify correctly during tx aggregation. Likely a "double spend" across two unconfirmed txs.
CutThrough
Validation error relating to cut-through (tx is spending its own output).
InvalidOutputFeatures
Validation error relating to output features. It is invalid for a transaction to contain a coinbase output, for example.
InvalidKernelFeatures
Validation error relating to kernel features. It is invalid for a transaction to contain a coinbase kernel, for example.
IncorrectSignature
Signature verification error.
Serialization(Error)
Underlying serialization error.
Trait Implementations
impl PartialEq<Error> for Error
[src]
impl PartialEq<Error> for Error
impl From<Error> for Error
[src]
impl From<Error> for Error
impl From<Error> for Error
[src]
impl From<Error> for Error
impl From<Error> for Error
[src]
impl From<Error> for Error
impl From<Error> for Error
[src]
impl From<Error> for Error
impl From<Error> for Error
[src]
impl From<Error> for Error
impl From<Error> for Error
[src]
impl From<Error> for Error
impl Clone for Error
[src]
impl Clone for Error
fn clone(&self) -> Error
[src]
fn clone(&self) -> Error
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl Eq for Error
[src]
impl Eq for Error
impl Display for Error
[src]
impl Display for Error
impl Debug for Error
[src]
impl Debug for Error
impl Error for Error
[src]
impl Error for Error
fn description(&self) -> &str
[src]
fn description(&self) -> &str
fn cause(&self) -> Option<&dyn Error>
1.0.0[src]
fn cause(&self) -> Option<&dyn Error>
: replaced by Error::source, which can support downcasting
The lower-level cause of this error, if any. Read more
fn source(&self) -> Option<&(dyn Error + 'static)>
1.30.0[src]
fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more
Auto Trait Implementations
Blanket Implementations
impl<T> From for T
[src]
impl<T> From for T
impl<T, U> Into for T where
U: From<T>,
[src]
impl<T, U> Into for T where
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
impl<T> ToString for T where
T: Display + ?Sized,
[src]
impl<T> ToString for T where
T: Display + ?Sized,
impl<T, U> TryFrom for T where
T: From<U>,
[src]
impl<T, U> TryFrom for T where
T: From<U>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
impl<T> Borrow for T where
T: ?Sized,
[src]
impl<T> Borrow for T where
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
impl<T> BorrowMut for T where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
fn borrow_mut(&mut self) -> &mut T
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
impl<T> Any for T where
T: 'static + ?Sized,
[src]
impl<T> Any for T where
T: 'static + ?Sized,
fn get_type_id(&self) -> TypeId
[src]
fn get_type_id(&self) -> TypeId
impl<T> DebugAny for T where
T: Any + Debug,
impl<T> DebugAny for T where
T: Any + Debug,
impl<T> CloneAny for T where
T: Clone + Any,
impl<T> CloneAny for T where
T: Clone + Any,
fn clone_any(&self) -> Box<dyn CloneAny + 'static>
fn clone_any(&self) -> Box<dyn CloneAny + 'static>
fn clone_any_send(&self) -> Box<dyn CloneAny + 'static + Send> where
T: Send,
fn clone_any_send(&self) -> Box<dyn CloneAny + 'static + Send> where
T: Send,
fn clone_any_sync(&self) -> Box<dyn CloneAny + 'static + Sync> where
T: Sync,
fn clone_any_sync(&self) -> Box<dyn CloneAny + 'static + Sync> where
T: Sync,
fn clone_any_send_sync(&self) -> Box<dyn CloneAny + 'static + Sync + Send> where
T: Send + Sync,
fn clone_any_send_sync(&self) -> Box<dyn CloneAny + 'static + Sync + Send> where
T: Send + Sync,
impl<T> UnsafeAny for T where
T: Any,
impl<T> UnsafeAny for T where
T: Any,
impl<T> Erased for T
impl<T> Erased for T
impl<T> Same for T
impl<T> Same for T
type Output = T
Should always be Self
impl<T> AsFail for T where
T: Fail,
[src]
impl<T> AsFail for T where
T: Fail,
impl<E> Fail for E where
E: 'static + Error + Send + Sync,
[src]
impl<E> Fail for E where
E: 'static + Error + Send + Sync,
fn name(&self) -> Option<&str>
[src]
fn name(&self) -> Option<&str>
Returns the "name" of the error. Read more
fn cause(&self) -> Option<&(dyn Fail + 'static)>
[src]
fn cause(&self) -> Option<&(dyn Fail + 'static)>
Returns a reference to the underlying cause of this failure, if it is an error that wraps other errors. Read more
fn backtrace(&self) -> Option<&Backtrace>
[src]
fn backtrace(&self) -> Option<&Backtrace>
Returns a reference to the Backtrace
carried by this failure, if it carries one. Read more
fn context<D>(self, context: D) -> Context<D> where
D: Display + Send + Sync + 'static,
[src]
fn context<D>(self, context: D) -> Context<D> where
D: Display + Send + Sync + 'static,
Provides context for this failure. Read more
fn compat(self) -> Compat<Self>
[src]
fn compat(self) -> Compat<Self>
Wraps this failure in a compatibility wrapper that implements std::error::Error
. Read more