pub enum TempoInvalidTransaction {
Show 32 variants
EthInvalidTransaction(InvalidTransaction),
SystemTransactionMustBeCall,
SystemTransactionFailed(Box<ExecutionResult<TempoHaltReason>>),
InvalidFeePayerSignature,
SelfSponsoredFeePayer,
ValidAfter {
current: u64,
valid_after: u64,
},
ValidBefore {
current: u64,
valid_before: u64,
},
InvalidP256Signature,
InvalidWebAuthnSignature {
reason: String,
},
InsufficientGasForIntrinsicCost {
gas_limit: u64,
intrinsic_gas: u64,
},
NonceManagerError(String),
ExpiringNonceMissingTxEnv,
ExpiringNonceMissingValidBefore,
ExpiringNonceNonceNotZero,
SubblockTransactionMustHaveZeroFee,
InvalidFeeToken(Address),
ValueTransferNotAllowed,
ValueTransferNotAllowedInAATx,
AccessKeyRecoveryFailed,
AccessKeyCannotAuthorizeOtherKeys,
KeyAuthorizationSignatureRecoveryFailed,
KeyAuthorizationNotSignedByRoot {
expected: Address,
actual: Address,
},
AccessKeyExpiryInPast {
expiry: u64,
current_timestamp: u64,
},
KeychainPrecompileError {
reason: String,
},
KeychainUserAddressMismatch {
user_address: Address,
caller: Address,
},
KeychainValidationFailed {
reason: String,
},
KeyAuthorizationChainIdMismatch {
expected: u64,
got: u64,
},
LegacyKeychainSignature,
V2KeychainBeforeActivation,
KeychainOpInSubblockTransaction,
CollectFeePreTx(FeePaymentError),
CallsValidation(&'static str),
}Expand description
Tempo-specific invalid transaction errors.
This enum extends the standard Ethereum [InvalidTransaction] with Tempo-specific
validation errors that occur during transaction processing.
Variants§
EthInvalidTransaction(InvalidTransaction)
Standard Ethereum transaction validation error.
SystemTransactionMustBeCall
System transaction must be a call (not a create).
SystemTransactionFailed(Box<ExecutionResult<TempoHaltReason>>)
System transaction execution failed.
InvalidFeePayerSignature
Fee payer signature recovery failed.
This error occurs when a transaction specifies a fee payer but the signature recovery for the fee payer fails.
SelfSponsoredFeePayer
Fee payer cannot resolve to the sender address.
ValidAfter
Transaction cannot be included before validAfter timestamp.
Tempo transactions can specify a validAfter field to restrict when they can be included.
Fields
ValidBefore
Transaction cannot be included after validBefore timestamp.
Tempo transactions can specify a validBefore field to restrict when they can be included.
Fields
InvalidP256Signature
P256 signature verification failed.
The P256 signature could not be verified against the transaction hash.
InvalidWebAuthnSignature
WebAuthn signature verification failed.
The WebAuthn signature validation failed (could be authenticatorData, clientDataJSON, or P256 verification).
InsufficientGasForIntrinsicCost
Insufficient gas for intrinsic cost.
Tempo transactions have variable intrinsic gas costs based on signature type and nonce usage. This error occurs when the gas_limit is less than the calculated intrinsic gas.
Fields
NonceManagerError(String)
Nonce manager error.
ExpiringNonceMissingTxEnv
Expiring nonce transaction missing tempo_tx_env.
ExpiringNonceMissingValidBefore
Expiring nonce transaction missing valid_before.
ExpiringNonceNonceNotZero
Expiring nonce transaction must have nonce == 0.
SubblockTransactionMustHaveZeroFee
Subblock transaction must have zero fee.
InvalidFeeToken(Address)
Invalid fee token.
ValueTransferNotAllowed
Value transfer not allowed.
ValueTransferNotAllowedInAATx
Value transfer in Tempo Transaction not allowed.
AccessKeyRecoveryFailed
Failed to recover access key address from signature.
This error occurs when attempting to recover the access key address from a Keychain signature fails.
AccessKeyCannotAuthorizeOtherKeys
Access keys cannot authorize other keys.
Only the root key can authorize new access keys. An access key can only authorize itself in a same-transaction authorization flow.
KeyAuthorizationSignatureRecoveryFailed
Failed to recover signer from KeyAuthorization signature.
This error occurs when signature recovery from the KeyAuthorization fails.
KeyAuthorizationNotSignedByRoot
KeyAuthorization not signed by root account.
The KeyAuthorization must be signed by the root account (transaction caller), but was signed by a different address.
Fields
expected: AddressThe expected signer (root account).
actual: AddressThe actual signer recovered from the signature.
AccessKeyExpiryInPast
Access key expiry is in the past.
An access key cannot be authorized with an expiry timestamp that has already passed.
Fields
KeychainPrecompileError
AccountKeychain precompile error during key authorization.
This error occurs when the AccountKeychain precompile rejects the key authorization (e.g., key already exists, invalid parameters).
KeychainUserAddressMismatch
Keychain user address does not match transaction caller.
For Keychain signatures, the user_address field must match the transaction caller.
Fields
user_address: AddressThe user_address from the Keychain signature.
caller: AddressThe transaction caller.
KeychainValidationFailed
Keychain validation failed.
The access key is not authorized in the AccountKeychain precompile for this user, or the key has expired, or spending limits are exceeded.
KeyAuthorizationChainIdMismatch
KeyAuthorization chain_id does not match the current chain.
Fields
LegacyKeychainSignature
Legacy V1 keychain signature is no longer accepted (deprecated at T1C).
V1 keychain signatures do not bind the user address into the signature hash. Use V2 keychain signatures instead.
V2KeychainBeforeActivation
V2 keychain signature used before T1C activation.
V2 signatures (type 0x04) are only valid after the T1C hardfork activates. Rejecting them before activation prevents chain splits between upgraded and non-upgraded nodes.
TODO(tanishk): This variant can be removed after T1C activation on all networks.
KeychainOpInSubblockTransaction
Keychain operations are not supported in subblock transactions.
CollectFeePreTx(FeePaymentError)
Fee payment error.
CallsValidation(&'static str)
Tempo transaction validation error from validate_calls().
This wraps validation errors from the shared validate_calls function.
Trait Implementations§
Source§impl Clone for TempoInvalidTransaction
impl Clone for TempoInvalidTransaction
Source§fn clone(&self) -> TempoInvalidTransaction
fn clone(&self) -> TempoInvalidTransaction
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TempoInvalidTransaction
impl Debug for TempoInvalidTransaction
Source§impl Display for TempoInvalidTransaction
impl Display for TempoInvalidTransaction
Source§impl Error for TempoInvalidTransaction
impl Error for TempoInvalidTransaction
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<&'static str> for TempoInvalidTransaction
impl From<&'static str> for TempoInvalidTransaction
Source§impl From<FeePaymentError> for TempoInvalidTransaction
impl From<FeePaymentError> for TempoInvalidTransaction
Source§fn from(source: FeePaymentError) -> Self
fn from(source: FeePaymentError) -> Self
Source§impl From<InvalidTransaction> for TempoInvalidTransaction
impl From<InvalidTransaction> for TempoInvalidTransaction
Source§impl From<KeyAuthorizationChainIdError> for TempoInvalidTransaction
impl From<KeyAuthorizationChainIdError> for TempoInvalidTransaction
Source§impl From<KeychainVersionError> for TempoInvalidTransaction
impl From<KeychainVersionError> for TempoInvalidTransaction
Source§impl<DBError> From<TempoInvalidTransaction> for EVMError<DBError, TempoInvalidTransaction>
impl<DBError> From<TempoInvalidTransaction> for EVMError<DBError, TempoInvalidTransaction>
Source§fn from(err: TempoInvalidTransaction) -> Self
fn from(err: TempoInvalidTransaction) -> Self
Source§impl Hash for TempoInvalidTransaction
impl Hash for TempoInvalidTransaction
Source§impl InvalidTxError for TempoInvalidTransaction
impl InvalidTxError for TempoInvalidTransaction
Source§fn is_nonce_too_low(&self) -> bool
fn is_nonce_too_low(&self) -> bool
Source§fn as_invalid_tx_err(&self) -> Option<&InvalidTransaction>
fn as_invalid_tx_err(&self) -> Option<&InvalidTransaction>
InvalidTransaction] if any. Read more§fn is_gas_limit_too_high(&self) -> bool
fn is_gas_limit_too_high(&self) -> bool
§fn is_gas_limit_too_low(&self) -> bool
fn is_gas_limit_too_low(&self) -> bool
Source§impl PartialEq for TempoInvalidTransaction
impl PartialEq for TempoInvalidTransaction
impl Eq for TempoInvalidTransaction
impl StructuralPartialEq for TempoInvalidTransaction
Auto Trait Implementations§
impl Freeze for TempoInvalidTransaction
impl RefUnwindSafe for TempoInvalidTransaction
impl Send for TempoInvalidTransaction
impl Sync for TempoInvalidTransaction
impl Unpin for TempoInvalidTransaction
impl UnsafeUnpin for TempoInvalidTransaction
impl UnwindSafe for TempoInvalidTransaction
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Conv for T
impl<T> Conv for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
§impl<TxEnv, T> FromRecoveredTx<&T> for TxEnvwhere
TxEnv: FromRecoveredTx<T>,
impl<TxEnv, T> FromRecoveredTx<&T> for TxEnvwhere
TxEnv: FromRecoveredTx<T>,
§fn from_recovered_tx(tx: &&T, sender: Address) -> TxEnv
fn from_recovered_tx(tx: &&T, sender: Address) -> TxEnv
TxEnv] from a transaction and a sender address.§impl<TxEnv, T> FromTxWithEncoded<&T> for TxEnvwhere
TxEnv: FromTxWithEncoded<T>,
impl<TxEnv, T> FromTxWithEncoded<&T> for TxEnvwhere
TxEnv: FromTxWithEncoded<T>,
§fn from_encoded_tx(tx: &&T, sender: Address, encoded: Bytes) -> TxEnv
fn from_encoded_tx(tx: &&T, sender: Address, encoded: Bytes) -> TxEnv
TxEnv] from a transaction, its sender, and encoded transaction bytes.§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> ServiceExt for T
impl<T> ServiceExt for T
§fn propagate_header(self, header: HeaderName) -> PropagateHeader<Self>where
Self: Sized,
fn propagate_header(self, header: HeaderName) -> PropagateHeader<Self>where
Self: Sized,
propagate-header only.§fn add_extension<T>(self, value: T) -> AddExtension<Self, T>where
Self: Sized,
fn add_extension<T>(self, value: T) -> AddExtension<Self, T>where
Self: Sized,
add-extension only.§fn map_request_body<F>(self, f: F) -> MapRequestBody<Self, F>where
Self: Sized,
fn map_request_body<F>(self, f: F) -> MapRequestBody<Self, F>where
Self: Sized,
map-request-body only.§fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
map-response-body only.§fn compression(self) -> Compression<Self>where
Self: Sized,
fn compression(self) -> Compression<Self>where
Self: Sized,
compression-br or compression-deflate or compression-gzip or compression-zstd only.§fn decompression(self) -> Decompression<Self>where
Self: Sized,
fn decompression(self) -> Decompression<Self>where
Self: Sized,
decompression-br or decompression-deflate or decompression-gzip or decompression-zstd only.§fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
trace only.§fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
trace only.§fn follow_redirects(self) -> FollowRedirect<Self>where
Self: Sized,
fn follow_redirects(self) -> FollowRedirect<Self>where
Self: Sized,
follow-redirect only.§fn sensitive_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveRequestHeaders<SetSensitiveResponseHeaders<Self>>where
Self: Sized,
fn sensitive_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveRequestHeaders<SetSensitiveResponseHeaders<Self>>where
Self: Sized,
sensitive-headers only.§fn sensitive_request_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveRequestHeaders<Self>where
Self: Sized,
fn sensitive_request_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveRequestHeaders<Self>where
Self: Sized,
sensitive-headers only.§fn sensitive_response_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveResponseHeaders<Self>where
Self: Sized,
fn sensitive_response_headers(
self,
headers: impl IntoIterator<Item = HeaderName>,
) -> SetSensitiveResponseHeaders<Self>where
Self: Sized,
sensitive-headers only.§fn override_request_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
fn override_request_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
set-header only.§fn append_request_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
fn append_request_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
set-header only.§fn insert_request_header_if_not_present<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
fn insert_request_header_if_not_present<M>(
self,
header_name: HeaderName,
make: M,
) -> SetRequestHeader<Self, M>where
Self: Sized,
set-header only.§fn override_response_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
fn override_response_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
set-header only.§fn append_response_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
fn append_response_header<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
set-header only.§fn insert_response_header_if_not_present<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
fn insert_response_header_if_not_present<M>(
self,
header_name: HeaderName,
make: M,
) -> SetResponseHeader<Self, M>where
Self: Sized,
set-header only.§fn set_request_id<M>(
self,
header_name: HeaderName,
make_request_id: M,
) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
fn set_request_id<M>(
self,
header_name: HeaderName,
make_request_id: M,
) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
request-id only.§fn set_x_request_id<M>(self, make_request_id: M) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
fn set_x_request_id<M>(self, make_request_id: M) -> SetRequestId<Self, M>where
Self: Sized,
M: MakeRequestId,
request-id only.x-request-id as the header name. Read more§fn propagate_request_id(
self,
header_name: HeaderName,
) -> PropagateRequestId<Self>where
Self: Sized,
fn propagate_request_id(
self,
header_name: HeaderName,
) -> PropagateRequestId<Self>where
Self: Sized,
request-id only.§fn propagate_x_request_id(self) -> PropagateRequestId<Self>where
Self: Sized,
fn propagate_x_request_id(self) -> PropagateRequestId<Self>where
Self: Sized,
request-id only.x-request-id as the header name. Read more§fn catch_panic(self) -> CatchPanic<Self, DefaultResponseForPanic>where
Self: Sized,
fn catch_panic(self) -> CatchPanic<Self, DefaultResponseForPanic>where
Self: Sized,
catch-panic only.500 Internal Server responses. Read more§fn request_body_limit(self, limit: usize) -> RequestBodyLimit<Self>where
Self: Sized,
fn request_body_limit(self, limit: usize) -> RequestBodyLimit<Self>where
Self: Sized,
limit only.413 Payload Too Large responses. Read more§fn trim_trailing_slash(self) -> NormalizePath<Self>where
Self: Sized,
fn trim_trailing_slash(self) -> NormalizePath<Self>where
Self: Sized,
normalize-path only.§fn append_trailing_slash(self) -> NormalizePath<Self>where
Self: Sized,
fn append_trailing_slash(self) -> NormalizePath<Self>where
Self: Sized,
normalize-path only.§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.
§impl<T> TryConv for T
impl<T> TryConv for T
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
Source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
Source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> MaybeDebug for Twhere
T: Debug,
impl<T> MaybeSend for Twhere
T: Send,
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 80 bytes
Size for each variant:
EthInvalidTransaction: 64 bytesSystemTransactionMustBeCall: 0 bytesSystemTransactionFailed: 16 bytesInvalidFeePayerSignature: 0 bytesSelfSponsoredFeePayer: 0 bytesValidAfter: 24 bytesValidBefore: 24 bytesInvalidP256Signature: 0 bytesInvalidWebAuthnSignature: 32 bytesInsufficientGasForIntrinsicCost: 24 bytesNonceManagerError: 32 bytesExpiringNonceMissingTxEnv: 0 bytesExpiringNonceMissingValidBefore: 0 bytesExpiringNonceNonceNotZero: 0 bytesSubblockTransactionMustHaveZeroFee: 0 bytesInvalidFeeToken: 28 bytesValueTransferNotAllowed: 0 bytesValueTransferNotAllowedInAATx: 0 bytesAccessKeyRecoveryFailed: 0 bytesAccessKeyCannotAuthorizeOtherKeys: 0 bytesKeyAuthorizationSignatureRecoveryFailed: 0 bytesKeyAuthorizationNotSignedByRoot: 48 bytesAccessKeyExpiryInPast: 24 bytesKeychainPrecompileError: 32 bytesKeychainUserAddressMismatch: 48 bytesKeychainValidationFailed: 32 bytesKeyAuthorizationChainIdMismatch: 24 bytesLegacyKeychainSignature: 0 bytesV2KeychainBeforeActivation: 0 bytesKeychainOpInSubblockTransaction: 0 bytesCollectFeePreTx: 72 bytesCallsValidation: 24 bytes