spider_util/lib.rs
1//! # spider-util
2//!
3//! Shared types and helper modules used across the `spider-*` workspace.
4//!
5//! This crate is where request and response models, error types, selector
6//! helpers, formatting helpers, metrics helpers, and other common utilities
7//! live.
8//!
9//! ## Example
10//!
11//! ```rust,ignore
12//! use spider_util::request::Request;
13//! use url::Url;
14//!
15//! let url = Url::parse("https://example.com").unwrap();
16//! let request = Request::new(url);
17//! let _ = request;
18//! ```
19
20pub mod bloom;
21pub mod constants;
22pub mod error;
23pub mod formatters;
24pub mod http_client;
25pub mod item;
26pub mod metrics;
27pub mod request;
28pub mod response;
29pub mod selector;
30pub mod util;
31
32pub use constants::*;
33pub use formatters::{
34 ByteFormatter, DefaultByteFormatter, DefaultDurationFormatter, DefaultRateCalculator,
35 DurationFormatter, RateCalculator, format_bytes, format_duration, format_request_time,
36};
37pub use http_client::HttpClient;