pub trait Banks: Sized {
type SendTransactionWithContextFut: Future<Output = ()>;
type GetTransactionStatusWithContextFut: Future<Output = Option<TransactionStatus>>;
type GetSlotWithContextFut: Future<Output = Slot>;
type GetBlockHeightWithContextFut: Future<Output = u64>;
type ProcessTransactionWithPreflightAndCommitmentAndContextFut: Future<Output = BanksTransactionResultWithSimulation>;
type ProcessTransactionWithCommitmentAndContextFut: Future<Output = Option<Result<()>>>;
type ProcessTransactionWithMetadataAndContextFut: Future<Output = BanksTransactionResultWithMetadata>;
type SimulateTransactionWithCommitmentAndContextFut: Future<Output = BanksTransactionResultWithSimulation>;
type GetAccountWithCommitmentAndContextFut: Future<Output = Option<Account>>;
type GetLatestBlockhashWithContextFut: Future<Output = Hash>;
type GetLatestBlockhashWithCommitmentAndContextFut: Future<Output = Option<(Hash, u64)>>;
type GetFeeForMessageWithCommitmentAndContextFut: Future<Output = Option<u64>>;
Show 13 methods
// Required methods
fn send_transaction_with_context(
self,
context: Context,
transaction: VersionedTransaction,
) -> Self::SendTransactionWithContextFut;
fn get_transaction_status_with_context(
self,
context: Context,
signature: Signature,
) -> Self::GetTransactionStatusWithContextFut;
fn get_slot_with_context(
self,
context: Context,
commitment: CommitmentLevel,
) -> Self::GetSlotWithContextFut;
fn get_block_height_with_context(
self,
context: Context,
commitment: CommitmentLevel,
) -> Self::GetBlockHeightWithContextFut;
fn process_transaction_with_preflight_and_commitment_and_context(
self,
context: Context,
transaction: VersionedTransaction,
commitment: CommitmentLevel,
) -> Self::ProcessTransactionWithPreflightAndCommitmentAndContextFut;
fn process_transaction_with_commitment_and_context(
self,
context: Context,
transaction: VersionedTransaction,
commitment: CommitmentLevel,
) -> Self::ProcessTransactionWithCommitmentAndContextFut;
fn process_transaction_with_metadata_and_context(
self,
context: Context,
transaction: VersionedTransaction,
) -> Self::ProcessTransactionWithMetadataAndContextFut;
fn simulate_transaction_with_commitment_and_context(
self,
context: Context,
transaction: VersionedTransaction,
commitment: CommitmentLevel,
) -> Self::SimulateTransactionWithCommitmentAndContextFut;
fn get_account_with_commitment_and_context(
self,
context: Context,
address: Pubkey,
commitment: CommitmentLevel,
) -> Self::GetAccountWithCommitmentAndContextFut;
fn get_latest_blockhash_with_context(
self,
context: Context,
) -> Self::GetLatestBlockhashWithContextFut;
fn get_latest_blockhash_with_commitment_and_context(
self,
context: Context,
commitment: CommitmentLevel,
) -> Self::GetLatestBlockhashWithCommitmentAndContextFut;
fn get_fee_for_message_with_commitment_and_context(
self,
context: Context,
message: Message,
commitment: CommitmentLevel,
) -> Self::GetFeeForMessageWithCommitmentAndContextFut;
// Provided method
fn serve(self) -> ServeBanks<Self> { ... }
}
Required Associated Types§
Sourcetype SendTransactionWithContextFut: Future<Output = ()>
type SendTransactionWithContextFut: Future<Output = ()>
The response future returned by Banks::send_transaction_with_context
.
Sourcetype GetTransactionStatusWithContextFut: Future<Output = Option<TransactionStatus>>
type GetTransactionStatusWithContextFut: Future<Output = Option<TransactionStatus>>
The response future returned by Banks::get_transaction_status_with_context
.
Sourcetype GetSlotWithContextFut: Future<Output = Slot>
type GetSlotWithContextFut: Future<Output = Slot>
The response future returned by Banks::get_slot_with_context
.
Sourcetype GetBlockHeightWithContextFut: Future<Output = u64>
type GetBlockHeightWithContextFut: Future<Output = u64>
The response future returned by Banks::get_block_height_with_context
.
Sourcetype ProcessTransactionWithPreflightAndCommitmentAndContextFut: Future<Output = BanksTransactionResultWithSimulation>
type ProcessTransactionWithPreflightAndCommitmentAndContextFut: Future<Output = BanksTransactionResultWithSimulation>
The response future returned by Banks::process_transaction_with_preflight_and_commitment_and_context
.
Sourcetype ProcessTransactionWithCommitmentAndContextFut: Future<Output = Option<Result<()>>>
type ProcessTransactionWithCommitmentAndContextFut: Future<Output = Option<Result<()>>>
The response future returned by Banks::process_transaction_with_commitment_and_context
.
Sourcetype ProcessTransactionWithMetadataAndContextFut: Future<Output = BanksTransactionResultWithMetadata>
type ProcessTransactionWithMetadataAndContextFut: Future<Output = BanksTransactionResultWithMetadata>
The response future returned by Banks::process_transaction_with_metadata_and_context
.
Sourcetype SimulateTransactionWithCommitmentAndContextFut: Future<Output = BanksTransactionResultWithSimulation>
type SimulateTransactionWithCommitmentAndContextFut: Future<Output = BanksTransactionResultWithSimulation>
The response future returned by Banks::simulate_transaction_with_commitment_and_context
.
Sourcetype GetAccountWithCommitmentAndContextFut: Future<Output = Option<Account>>
type GetAccountWithCommitmentAndContextFut: Future<Output = Option<Account>>
The response future returned by Banks::get_account_with_commitment_and_context
.
Sourcetype GetLatestBlockhashWithContextFut: Future<Output = Hash>
type GetLatestBlockhashWithContextFut: Future<Output = Hash>
The response future returned by Banks::get_latest_blockhash_with_context
.
Sourcetype GetLatestBlockhashWithCommitmentAndContextFut: Future<Output = Option<(Hash, u64)>>
type GetLatestBlockhashWithCommitmentAndContextFut: Future<Output = Option<(Hash, u64)>>
The response future returned by Banks::get_latest_blockhash_with_commitment_and_context
.
Sourcetype GetFeeForMessageWithCommitmentAndContextFut: Future<Output = Option<u64>>
type GetFeeForMessageWithCommitmentAndContextFut: Future<Output = Option<u64>>
The response future returned by Banks::get_fee_for_message_with_commitment_and_context
.
Required Methods§
fn send_transaction_with_context( self, context: Context, transaction: VersionedTransaction, ) -> Self::SendTransactionWithContextFut
fn get_transaction_status_with_context( self, context: Context, signature: Signature, ) -> Self::GetTransactionStatusWithContextFut
fn get_slot_with_context( self, context: Context, commitment: CommitmentLevel, ) -> Self::GetSlotWithContextFut
fn get_block_height_with_context( self, context: Context, commitment: CommitmentLevel, ) -> Self::GetBlockHeightWithContextFut
fn process_transaction_with_preflight_and_commitment_and_context( self, context: Context, transaction: VersionedTransaction, commitment: CommitmentLevel, ) -> Self::ProcessTransactionWithPreflightAndCommitmentAndContextFut
fn process_transaction_with_commitment_and_context( self, context: Context, transaction: VersionedTransaction, commitment: CommitmentLevel, ) -> Self::ProcessTransactionWithCommitmentAndContextFut
fn process_transaction_with_metadata_and_context( self, context: Context, transaction: VersionedTransaction, ) -> Self::ProcessTransactionWithMetadataAndContextFut
fn simulate_transaction_with_commitment_and_context( self, context: Context, transaction: VersionedTransaction, commitment: CommitmentLevel, ) -> Self::SimulateTransactionWithCommitmentAndContextFut
fn get_account_with_commitment_and_context( self, context: Context, address: Pubkey, commitment: CommitmentLevel, ) -> Self::GetAccountWithCommitmentAndContextFut
fn get_latest_blockhash_with_context( self, context: Context, ) -> Self::GetLatestBlockhashWithContextFut
fn get_latest_blockhash_with_commitment_and_context( self, context: Context, commitment: CommitmentLevel, ) -> Self::GetLatestBlockhashWithCommitmentAndContextFut
fn get_fee_for_message_with_commitment_and_context( self, context: Context, message: Message, commitment: CommitmentLevel, ) -> Self::GetFeeForMessageWithCommitmentAndContextFut
Provided Methods§
Sourcefn serve(self) -> ServeBanks<Self>
fn serve(self) -> ServeBanks<Self>
Returns a serving function to use with InFlightRequest::execute.
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.