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
20extern crate self as spider_util;
21
22pub mod bloom;
23pub mod constants;
24pub mod error;
25pub mod formatters;
26pub mod http_client;
27pub mod item;
28pub mod metrics;
29pub mod request;
30pub mod response;
31pub mod selector;
32pub mod util;
33
34pub use constants::*;
35pub use formatters::{
36 ByteFormatter, DefaultByteFormatter, DefaultDurationFormatter, DefaultRateCalculator,
37 DurationFormatter, RateCalculator, format_bytes, format_duration, format_request_time,
38};
39pub use http_client::HttpClient;