pub struct Indexer<Block, Client, TransactionAdapter> { /* private fields */ }Expand description
The main blockchain indexer.
Implementations§
Source§impl<Block, Client, TransactionAdapter> Indexer<Block, Client, TransactionAdapter>
impl<Block, Client, TransactionAdapter> Indexer<Block, Client, TransactionAdapter>
Sourcepub async fn new(
db_path: &Path,
network: Network,
client: Arc<Client>,
) -> Result<Self, Error>
pub async fn new( db_path: &Path, network: Network, client: Arc<Client>, ) -> Result<Self, Error>
Create a new indexer.
This only initializes the database connection. Historical indexing is deferred
to run() to avoid blocking node startup (including the RPC server).
Sourcepub fn query(&self) -> IndexerQuery
pub fn query(&self) -> IndexerQuery
Get a query interface for this indexer.
Sourcepub fn run_on_dedicated_thread(self)where
Block: 'static,
Client: 'static,
TransactionAdapter: 'static,
pub fn run_on_dedicated_thread(self)where
Block: 'static,
Client: 'static,
TransactionAdapter: 'static,
Run the indexer on a dedicated thread with its own tokio runtime.
This isolates the indexer’s I/O from the main async runtime, preventing SQLite operations from blocking other tasks.
Auto Trait Implementations§
impl<Block, Client, TransactionAdapter> Freeze for Indexer<Block, Client, TransactionAdapter>
impl<Block, Client, TransactionAdapter> !RefUnwindSafe for Indexer<Block, Client, TransactionAdapter>
impl<Block, Client, TransactionAdapter> Send for Indexer<Block, Client, TransactionAdapter>
impl<Block, Client, TransactionAdapter> Sync for Indexer<Block, Client, TransactionAdapter>
impl<Block, Client, TransactionAdapter> Unpin for Indexer<Block, Client, TransactionAdapter>
impl<Block, Client, TransactionAdapter> !UnwindSafe for Indexer<Block, Client, TransactionAdapter>
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
Mutably borrows from an owned value. Read more
§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
§fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
§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> 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§impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
fn into_tuple(self) -> Dest
§impl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T. Read more§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from.§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T.