Expand description
A complete Indexer abstraction for communicating with Zcash chain
indexers (lightwalletd / zainod).
§Organizing principle
The Indexer trait is the sole interface a Zcash wallet or tool needs
to query, sync, and broadcast against a chain indexer. It is
implementation-agnostic: production code uses the provided GrpcIndexer
(gRPC over tonic), while tests can supply a mock implementor with no
network dependency.
All proto types come from
lightwallet-protocol
and are re-exported via pub use lightwallet_protocol so consumers do
not need an additional dependency.
§Feature gates
All features are off by default.
| Feature | What it enables |
|---|---|
globally-public-transparent | [TransparentIndexer] sub-trait for t-address balance, transaction history, and UTXO queries. Pulls in tokio-stream. |
ping-very-insecure | [Indexer::ping] method. Name mirrors the lightwalletd --ping-very-insecure CLI flag. Testing only. |
Note: Build docs with --all-features so intra-doc links to
feature-gated items resolve:
RUSTDOCFLAGS="-D warnings" cargo doc --all-features --document-private-itemsRe-exports§
pub use lightwallet_protocol;pub use error::*;
Modules§
Structs§
- Grpc
Indexer - gRPC-backed
Indexerthat connects to a Zcash chain indexer (server). - Status
- A gRPC status describing the result of an RPC call.
- Streaming
- Streaming requests and responses.
Traits§
- Indexer
- Trait for communicating with a Zcash chain indexer.