pub struct Query {
pub from_block: u64,
pub to_block: Option<u64>,
pub include_all_blocks: bool,
pub logs: Vec<LogRequest>,
pub transactions: Vec<TransactionRequest>,
pub traces: Vec<TraceRequest>,
pub fields: Fields,
}Expand description
Describes what data to fetch from the RPC provider.
A query specifies a block range, which EVM tables to populate (logs, transactions, traces), and which fields to include in each table.
Fields§
§from_block: u64First block to fetch (inclusive).
to_block: Option<u64>Last block to fetch (inclusive). None means stream up to the current head.
include_all_blocks: boolWhen true, fetch block headers even if no log/transaction/trace
request is present.
logs: Vec<LogRequest>Log filter requests. Each entry produces separate eth_getLogs calls
and results are merged.
transactions: Vec<TransactionRequest>Transaction requests. Presence triggers the block pipeline
(eth_getBlockByNumber).
traces: Vec<TraceRequest>Trace requests. Presence triggers the trace pipeline
(trace_block or debug_traceBlockByNumber).
fields: FieldsControls which columns appear in the output Arrow batches.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Query
impl RefUnwindSafe for Query
impl Send for Query
impl Sync for Query
impl Unpin for Query
impl UnwindSafe for Query
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§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