1#![warn(clippy::all, clippy::pedantic)]
34#![warn(
35 absolute_paths_not_starting_with_crate,
36 rustdoc::invalid_html_tags,
37 missing_copy_implementations,
38 missing_debug_implementations,
39 semicolon_in_expressions_from_macros,
40 unreachable_pub,
41 unused_crate_dependencies,
42 unused_extern_crates,
43 variant_size_differences,
44 clippy::missing_const_for_fn
45)]
46#![deny(anonymous_parameters, macro_use_extern_crate)]
47#![deny(missing_docs)]
48#![allow(clippy::module_name_repetitions)]
49
50#[cfg(doctest)]
51doc_comment::doctest!("../../README.md");
52
53#[cfg(all(test, not(doctest)))]
54use tokio_stream as _;
55
56pub mod archive;
58mod basic_auth;
59pub mod chain;
60mod checker;
61mod client;
62pub mod collector;
64mod quirks;
65mod retry;
66mod types;
67mod utils;
68
69pub mod extract;
71
72pub mod remap;
73
74pub mod ratelimit;
76
77pub mod filter;
81
82pub mod cache;
83
84pub mod waiter;
85
86#[cfg(test)]
87use doc_comment as _; use ring as _; #[doc(inline)]
91pub use crate::{
92 basic_auth::BasicAuthExtractor,
93 chain::{ChainResult, Handler},
95 client::{
97 Client, ClientBuilder, DEFAULT_MAX_REDIRECTS, DEFAULT_MAX_RETRIES,
98 DEFAULT_RETRY_WAIT_TIME_SECS, DEFAULT_TIMEOUT_SECS, DEFAULT_USER_AGENT, check,
99 },
100 collector::Collector,
101 filter::{Excludes, Filter, Includes},
102 types::{
103 BaseInfo, BasicAuthCredentials, BasicAuthSelector, CacheStatus, CookieJar, ErrorKind,
104 FileExtensions, FileType, Input, InputContent, InputResolver, InputSource, LycheeResult,
105 Preprocessor, Redirect, Redirects, Request, RequestError, ResolvedInputSource, Response,
106 ResponseBody, Result, Status, StatusCodeSelector, StatusRange, StatusRangeError,
107 uri::raw::RawUri, uri::raw::RawUriSpan, uri::valid::Uri,
108 },
109};