Skip to main content

ic_query/
lib.rs

1//! Reusable report models and helpers for Internet Computer metadata queries.
2//!
3//! The default feature set is empty. A dependency using
4//! `default-features = false` gets the pure report DTOs, renderers, and local
5//! parsing/resolution helpers that are intended to stay free of native
6//! live-call dependencies.
7//!
8//! This is a host dependency boundary, not a `no_std` promise. No-default
9//! builds are expected to compile for `wasm32-unknown-unknown` without
10//! `ic-agent`, Reqwest, Tokio, or `futures`, but they may still use ordinary
11//! `std` types such as `String` and `Vec`.
12//!
13//! Enable `subnet-catalog-host` for the focused live/cache Subnet catalog API,
14//! or `host` for every native live-call adapter and runtime helper. CLI parsing
15//! and process IO belong to the separate `ic-query-cli` crate.
16
17#[cfg(feature = "subnet-catalog-host")]
18mod agent;
19#[cfg(feature = "host")]
20pub mod cache;
21#[cfg(feature = "subnet-catalog-host")]
22mod cache_file;
23#[cfg(feature = "host")]
24mod certification;
25pub mod duration;
26#[cfg(feature = "subnet-catalog-host")]
27mod freshness;
28mod hex;
29#[cfg(feature = "subnet-catalog-host")]
30mod http_endpoint;
31pub mod ic;
32#[cfg(feature = "subnet-catalog-host")]
33mod ic_registry;
34pub mod icrc;
35#[cfg(feature = "subnet-catalog-host")]
36mod network;
37pub mod nns;
38#[cfg(feature = "host")]
39mod progress;
40#[cfg(feature = "host")]
41mod report_sort;
42#[cfg(feature = "subnet-catalog-host")]
43mod runtime;
44#[cfg(feature = "host")]
45pub(crate) mod snapshot_cache;
46pub mod sns;
47pub mod subnet_catalog;
48pub mod system;
49
50#[cfg(feature = "subnet-catalog-host")]
51pub use cache_file::{CacheFileError, HostCacheError};
52mod table;
53#[cfg(feature = "host")]
54mod text_search;
55mod text_value;
56mod token_amount;
57mod token_metadata_text;
58
59#[cfg(all(test, feature = "subnet-catalog-host"))]
60mod test_support;
61
62#[cfg(test)]
63mod tests;
64
65#[cfg(feature = "host")]
66pub use progress::{QueryProgress, QueryProgressEvent, QueryProgressState};