url_cleaner_engine/tutorial/cleaner/
params.rs

1//! # [`Params`]
2//!
3//! [`Params`] are configuration for [`Cleaner`]s for both choosing optional alternate features and for storing data like [sets](set), [maps](map), [named partitionings](named_partitioning) and so on.
4//!
5//! Params can be modified with [`ParamsDiff`]s for either the lifetime of a URL Cleaner Engine provider or for specific jobs.
6//!
7//! For example, URL Cleaner Site can be invoked with `--params-diff my_params_diff.json` to apply it to all jobs and accept job configs with their own [`ParamsDiff`] to apply on top of it.
8//!
9//! Part of the params diff on my personal URL Cleaner Site instance is
10//!
11//! ```Json
12//! {
13//!   "flags": ["unmobile", "breezewiki"]
14//! }
15//! ```
16//!
17//! which makes all jobs have the `unmobile` and `breezewiki` flags enabled by default.
18//!
19//! In addition, my phone has a shortcut to send a job config to my URL Cleaner Site instance in the form of
20//!
21//! ```Json
22//! {
23//!   "params_diff": {
24//!     "flags": ["embed_compatibility"]
25//!   },
26//!   "tasks": ["the URL being cleaned"]
27//! }
28//! ```
29//!
30//! to use the `embed_compatibility` flag only when I need to.
31
32pub(crate) use super::*;