Struct anchor_client::Program
source · pub struct Program<C> { /* private fields */ }
Expand description
Program is the primary client handle to be used to build and send requests.
Implementations§
source§impl<C: Deref<Target = impl Signer> + Clone> Program<C>
impl<C: Deref<Target = impl Signer> + Clone> Program<C>
pub fn new(program_id: Pubkey, cfg: Config<C>) -> Result<Self, ClientError>
Available on crate feature
async
only.sourcepub async fn account<T: AccountDeserialize>(
&self,
address: Pubkey,
) -> Result<T, ClientError>
Available on crate feature async
only.
pub async fn account<T: AccountDeserialize>( &self, address: Pubkey, ) -> Result<T, ClientError>
async
only.Returns the account at the given address.
sourcepub async fn accounts<T: AccountDeserialize + Discriminator>(
&self,
filters: Vec<RpcFilterType>,
) -> Result<Vec<(Pubkey, T)>, ClientError>
Available on crate feature async
only.
pub async fn accounts<T: AccountDeserialize + Discriminator>( &self, filters: Vec<RpcFilterType>, ) -> Result<Vec<(Pubkey, T)>, ClientError>
async
only.Returns all program accounts of the given type matching the given filters
sourcepub async fn accounts_lazy<T: AccountDeserialize + Discriminator>(
&self,
filters: Vec<RpcFilterType>,
) -> Result<ProgramAccountsIterator<T>, ClientError>
Available on crate feature async
only.
pub async fn accounts_lazy<T: AccountDeserialize + Discriminator>( &self, filters: Vec<RpcFilterType>, ) -> Result<ProgramAccountsIterator<T>, ClientError>
async
only.Returns all program accounts of the given type matching the given filters as an iterator Deserialization is executed lazily
sourcepub async fn on<T: Event + AnchorDeserialize>(
&self,
f: impl Fn(&EventContext, T) + Send + 'static,
) -> Result<EventUnsubscriber<'_>, ClientError>
Available on crate feature async
only.
pub async fn on<T: Event + AnchorDeserialize>( &self, f: impl Fn(&EventContext, T) + Send + 'static, ) -> Result<EventUnsubscriber<'_>, ClientError>
async
only.Subscribe to program logs.
Returns an EventUnsubscriber
to unsubscribe and close connection gracefully.
Auto Trait Implementations§
impl<C> Freeze for Program<C>where
C: Freeze,
impl<C> !RefUnwindSafe for Program<C>
impl<C> Send for Program<C>where
C: Send,
impl<C> Sync for Program<C>where
C: Sync,
impl<C> Unpin for Program<C>where
C: Unpin,
impl<C> !UnwindSafe for Program<C>
Blanket Implementations§
source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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