pub trait TransactionCompat<T = TransactionSigned>:
Send
+ Sync
+ Unpin
+ Clone
+ Debug {
type Transaction: Serialize + for<'de> Deserialize<'de> + Send + Sync + Unpin + Clone + Debug;
type Error: Error + Into<ErrorObject<'static>>;
// Required methods
fn fill(
&self,
tx: RecoveredTx<T>,
tx_inf: TransactionInfo,
) -> Result<Self::Transaction, Self::Error>;
fn build_simulate_v1_transaction(
&self,
request: TransactionRequest,
) -> Result<T, Self::Error>;
fn otterscan_api_truncate_input(tx: &mut Self::Transaction);
}
Expand description
Builds RPC transaction w.r.t. network.
Required Associated Types§
Sourcetype Transaction: Serialize + for<'de> Deserialize<'de> + Send + Sync + Unpin + Clone + Debug
type Transaction: Serialize + for<'de> Deserialize<'de> + Send + Sync + Unpin + Clone + Debug
RPC transaction response type.
Required Methods§
Sourcefn fill(
&self,
tx: RecoveredTx<T>,
tx_inf: TransactionInfo,
) -> Result<Self::Transaction, Self::Error>
fn fill( &self, tx: RecoveredTx<T>, tx_inf: TransactionInfo, ) -> Result<Self::Transaction, Self::Error>
Create a new rpc transaction result for a pending signed transaction, setting block
environment related fields to None
.
Sourcefn build_simulate_v1_transaction(
&self,
request: TransactionRequest,
) -> Result<T, Self::Error>
fn build_simulate_v1_transaction( &self, request: TransactionRequest, ) -> Result<T, Self::Error>
Builds a fake transaction from a transaction request for inclusion into block built in
eth_simulateV1
.
Sourcefn otterscan_api_truncate_input(tx: &mut Self::Transaction)
fn otterscan_api_truncate_input(tx: &mut Self::Transaction)
Truncates the input of a transaction to only the first 4 bytes.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.