Closed
Description
In starknet-providers there is a ProviderError
type being defined:
#[derive(Debug, Error)]
pub enum ProviderError {
#[error(transparent)]
ReqwestError(#[from] ReqwestError),
#[error(transparent)]
Serialization(SerdeJsonError),
#[error("Deserialization error: {err}, Response: {text}")]
Deserialization { err: SerdeJsonError, text: String },
#[error(transparent)]
StarknetError(StarknetError),
}
It is not reexporte in lib.rs
#![doc = include_str!("../README.md")]
mod provider;
pub use provider::Provider;
mod sequencer_gateway;
pub use sequencer_gateway::SequencerGatewayProvider;
pub mod jsonrpc;
So I cannot use it in my code:
provider
.call_contract(
InvokeFunctionTransactionRequest {
contract_address,
entry_point_selector: selector!("get_user_information_from_github_handle"),
calldata,
signature: Default::default(),
max_fee: Default::default(),
},
BlockId::Latest,
)
.await
The return type of this expression is Result<CallContractResult, ProviderError>
but I cannot do anything with it because it is not exported.
I cannot wrap it in my own error type, neither can I write a From
implementation, nor return it directly.
What should be done ?
Probably export it too, or make the submodules public instead of keeping them private
Metadata
Metadata
Assignees
Labels
No labels